Guido van Rossum
Nova exsecutio multum est similis "par" operantis in Scala, Rust et F# comparata, quae effectum certae expressionis comparat cum indice exemplarium in caudices qui "casus" operantis innituntur. Dissimilis "switch" operantis in C, Java et in JavaScript, "par" -based locutiones multo magis offerunt
def http_error (status);
par status:
400 casu:
redire "petum malum"
casus 401| 403| 404;
redire "Non licet"
418 casu:
revertere "ego sum teapot"
case_:
revertere "Aliquid"
Exempli gratia, obiectis, tuples, tabulae, et arbitrariae series potes ligare variabiles in valoribus existentibus. Formulas nestas definire licet, additas condiciones "si" in Formula utere, larvis ("[x, y, *reliquis]"), clavis / valoris mappings (exempli gratia, {"Sed": b, "latency ": l} extrahere "bandwidth" et "latentiam" valores et dictionarium), extrahere subtemplatas (":=" operator), utere nomine constantes in template. In classes, potest mos adaptare mores utendo modum "__match_)".
ex dataclasses import dataclass
@dataclass
classis Point:
x:int
y: int
def ubi (punctum);
par punctum:
case Point(0, 0);
print("Origin")
case Point(0, y);
imprimere(f"Y={y}")
case Point(x, 0);
print(f"X={x}")
causa Point ():
print ( "Alicubi")
case_:
imprimere ("non punctum")
par punctum:
punctum (x, y) si x == y:
imprimere(f"Y=X ad {x}")
case Point (x, y);
print (f "Non in diametro")
RED, UF, RED = 0, 1, 2
par color:
casus .RED:
print ("rubrum video!"
apud .GREEN:
print ("Gras viridis est")
apud .BLU
E:
print ( "Im Sententia quod cæruleus:(")
Statuto parata ad recensionem
Source: opennet.ru