Guido van Rossum
Tá an cur i bhfeidhm nua mórán cosúil leis an oibreoir "meaitseáil" a chuirtear ar fáil i Scala, Rust, agus F#, a dhéanann comparáid idir toradh slonn sonraithe le liosta de na patrúin atá liostaithe i mbloic bunaithe ar an oibreoir "cás". Murab ionann agus an t-oibreoir "lasc" atá ar fáil in C, Java, agus JavaScript, cuireann sloinn atá bunaithe ar "mheaitseáil" i bhfad níos mó ar fáil
def http_error(stádas):
stádas meaitseála:
cás 400:
seol ar ais "Drochiarratas"
cás 401|403|404:
ar ais "Ní cheadaítear"
cás 418:
ar ais "Is teapot mé"
cás_:
ar ais "rud éigin eile"
Mar shampla, is féidir leat rudaí, tuples, liostaí, agus seichimh treallach a dhíphacáil chun athróga a cheangal bunaithe ar luachanna atá ann cheana féin. Tá sé ceadaithe teimpléid neadaithe a shainiú, coinníollacha breise “má” a úsáid sa teimpléad, maisc a úsáid (“[x, y, *rest]”), mapálacha eochair/luacha (mar shampla, {“bandaleithead”: b, “latency ” : l} chun luachanna agus foclóir "bandaleithead" agus "latency" a bhaint as), fotheimpléid a bhaint as (":=" oibreoir), bain úsáid as tairisigh ainmnithe sa teimpléad. Sna ranganna, is féidir iompar meaitseála a shaincheapadh leis an modh “__match__()”.
ó dataclasses allmhairiú rang sonraí
@aicme sonraí
pointe ranga:
x:int
y:int
def whereis(point):
pointe cluiche:
cásphointe(0, 0):
cló ("Origin")
cás pointe(0, y):
print(f"Y={y}")
cás Pointe(x, 0):
print(f"X={x}")
cásphointe():
print ("Áit éigin eile")
cás_:
cló ("Ní pointe")
pointe cluiche:
cás Pointe(x, y) má tá x == y:
print(f"Y=X ag {x}")
cás Pointe(x, y):
cló(f"Ní ar an trasnánach")
DEARG, GLAS, GORM = 0, 1, 2
dath a mheaitseáil:
cás .RED:
print ("Feicim dearg!")
cás .GREEN:
cló ("Tá féar glas")
cás .BLU
E:
print(“Táim ag mothú na gormacha :(”)
Tá sraith ullmhaithe le haghaidh athbhreithnithe
Foinse: oscailtenet.ru