Guido van Rossum
Ny fampiharana vaovao dia mitovy amin'ny mpandraharaha "match" omena ao amin'ny Scala, Rust, ary F #, izay mampitaha ny vokatry ny fanehoan-kevitra voafaritra miaraka amin'ny lisitry ny lamina voatanisa ao anaty sakana mifototra amin'ny mpandraharaha "tranga". Tsy toy ny mpandraharaha "switch" misy amin'ny C, Java, ary JavaScript, ny fomba fiteny mifototra amin'ny "match" dia manolotra betsaka kokoa
def http_error(status):
sata lalao:
tranga 400:
avereno "Fangatahana ratsy"
tranga 401|403|404:
miverina "Tsy azo atao"
tranga 418:
miverena "teapot aho"
tranga_:
miverina "zavatra hafa"
Ohatra, azonao atao ny mamaha zavatra, tuples, lisitra, ary filaharana tsy misy dikany mba hamehezana ny fari-piainana mifototra amin'ny sanda efa misy. Azo atao ny mamaritra ny maodely misy akany, mampiasa fepetra fanampiny "raha" ao amin'ny môdely, mampiasa saron-tava ("[x, y, *rest]"), fanalahidin'ny sarintany (ohatra, {"bandwidth": b, "latency ”: l} hanesorana ny soatoavina "bandwidth" sy "latency" ary rakibolana), alaivo ny subtemplates (":=" operator), ampiasao ny antsoina hoe constants amin'ny template. Ao an-dakilasy, azo atao ny mampifanaraka ny fitondran-tena mifanaraka amin'ny fampiasana ny fomba "__match__()".
avy amin'ny dataclasses import dataclass
@dataclass
teboka kilasy:
x:int
y:int
def whereis (point):
teboka mifanandrify:
tranga teboka(0, 0):
print ("Origin")
teboka tranga(0, y):
print(f"Y={y}")
teboka tranga(x, 0):
print(f"X={x}")
Case Point ():
print ("Any an-kafa")
tranga_:
print ("Tsy teboka")
teboka mifanandrify:
tranga Point(x, y) raha x == y:
print(f"Y=X amin'ny {x}")
teboka tranga (x, y):
print(f"Tsy eo amin'ny diagonaly")
Mena, Maitso, Manga = 0, 1, 2
loko mifanaraka:
tranga .mena:
print ("Mahita mena aho!")
tranga . MAITSO:
print("maitso ny ahitra")
tranga .BLU
E:
print(“Tsapako ny blues :(“)
Nisy andiana nomanina hojerena
Source: opennet.ru