แž›แŸ„แž€ Guido van Rossum แž”แžถแž“แžŸแŸ’แž“แžพแžฑแŸ’แž™แž”แž“แŸ’แžแŸ‚แž˜แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžšแž•แŸ’แž‚แžผแž•แŸ’แž‚แž„แž›แŸ†แž“แžถแŸ†แž‘แŸ… Python

แž›แŸ„แž€ Guido van Rossum แžŽแŸ‚แž“แžถแŸ† แžŸแŸแž…แž€แŸ’แžแžธแž–แŸ’แžšแžถแž„แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž–แžทแž“แžทแžแŸ’แž™แžŸแž แž‚แž˜แž“แŸ แž›แž€แŸ’แžแžŽแŸˆแž”แž…แŸ’แž…แŸแž€แž‘แŸแžŸ แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแžขแž“แžปแžœแžแŸ’แžแž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžšแž•แŸ’แž‚แžผแž•แŸ’แž‚แž„แž›แŸ†แž“แžถแŸ† (แž€แžถแžšแž•แŸ’แž‚แžผแž•แŸ’แž‚แž„แž“แžทแž„แž€แžšแžŽแžธ) แž“แŸ…แž€แŸ’แž“แžปแž„ Python แŸ” แžœแžถแž‚แžฝแžšแžแŸ‚แžแŸ’แžšแžผแžœแž”แžถแž“แž€แžแŸ‹แžŸแž˜แŸ’แž‚แžถแž›แŸ‹แžแžถแžŸแŸ†แžŽแžพแžŠแžพแž˜แŸ’แž”แžธแž”แž“แŸ’แžแŸ‚แž˜แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžšแž•แŸ’แž‚แžผแž•แŸ’แž‚แž„แž›แŸ†แž“แžถแŸ†แžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ„แŸ‡แž–แžปแž˜แŸ’แž–แžšแžฝแž…แž แžพแž™แž“แŸ…แž€แŸ’แž“แžปแž„ 2001 แž“แžทแž„ 2006 (pep-0275, pep-3103) แž”แŸ‰แžปแž“แŸ’แžแŸ‚แžแŸ’แžšแžผแžœแž”แžถแž“แž…แŸ’แžšแžถแž“แž…แŸ„แž›แž“แŸ…แž€แŸ’แž“แžปแž„แž€แžถแžšแž–แŸแž‰แž…แžทแžแŸ’แžแž“แŸƒแž€แžถแžšแž’แŸ’แžœแžพแžฑแŸ’แž™แž”แŸ’แžšแžŸแžพแžšแž“แŸƒแž€แžถแžšแžŸแžถแž„แžŸแž„แŸ‹ "แž”แŸ’แžšแžŸแžทแž“แž”แžพ ... elif ... แž•แŸ’แžŸแŸแž„แž‘แŸ€แž" แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž…แž„แž€แŸ’แžšแž„แžแŸ’แžŸแŸ‚แžŸแž„แŸ’แžœแžถแž€แŸ‹แžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž‚แŸ’แž“แžถแŸ”

แž€แžถแžšแžขแž“แžปแžœแžแŸ’แžแžแŸ’แž˜แžธแž‚แžบแžŠแžผแž…แž‡แžถแž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžš "แž€แžถแžšแž”แŸ’แžšแž€แžฝแž" แžŠแŸ‚แž›แž”แžถแž“แž•แŸ’แžแž›แŸ‹แž“แŸ…แž€แŸ’แž“แžปแž„ Scala, Rust แž“แžทแž„ F# แžŠแŸ‚แž›แž”แŸ’แžšแŸ€แž”แž’แŸ€แž”แž›แž‘แŸ’แž’แž•แž›แž“แŸƒแž€แž“แŸ’แžŸแŸ„แž˜แžŠแŸ‚แž›แž”แžถแž“แž”แž‰แŸ’แž‡แžถแž€แŸ‹แž‡แžถแž˜แžฝแž™แž“แžนแž„แž”แž‰แŸ’แž‡แžธแž‚แŸ†แžšแžผแžŠแŸ‚แž›แž”แžถแž“แžšแžถแž™แž€แŸ’แž“แžปแž„แž”แŸ’แž›แžปแž€แžŠแŸ„แž™แž•แŸ’แžขแŸ‚แž€แž›แžพแž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžš "แž€แžšแžŽแžธ" แŸ” แž˜แžทแž“แžŠแžผแž…แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžš "แž”แŸ’แžแžผแžš" แžŠแŸ‚แž›แž˜แžถแž“แž“แŸ…แž€แŸ’แž“แžปแž„ C, Java, แž“แžทแž„ JavaScript, แž€แž“แŸ’แžŸแŸ„แž˜แžŠแŸ‚แž›แž˜แžถแž“แž˜แžผแž›แžŠแŸ’แž‹แžถแž“แž›แžพ "แž€แžถแžšแž•แŸ’แž‚แžผแž•แŸ’แž‚แž„" แž•แŸ’แžแž›แŸ‹แž‡แžผแž“แž…แŸ’แžšแžพแž“แž‘แŸ€แž แž˜แžปแžแž„แžถแžšแž’แŸ†แž‘แžผแž›แžถแž™. แžœแžถแžแŸ’แžšแžผแžœแž”แžถแž“แž€แžแŸ‹แžŸแž˜แŸ’แž‚แžถแž›แŸ‹แžแžถแž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžšแžŠแŸ‚แž›แž”แžถแž“แžŸแŸ’แž“แžพแžกแžพแž„แž“แžนแž„แž’แŸ’แžœแžพแžฑแŸ’แž™แž”แŸ’แžšแžŸแžพแžšแžกแžพแž„แž“แžผแžœแž›แž‘แŸ’แž’แž—แžถแž–แžขแžถแž“แž€แžผแžŠ แžŸแž˜แŸ’แžšแžฝแž›แž€แžถแžšแž”แŸ’แžšแŸ€แž”แž’แŸ€แž”แžœแžแŸ’แžแžป Python แž”แŸ†แž–แžถแž“ แž“แžทแž„แž€แžถแžšแž”แŸ†แž”แžถแžแŸ‹แž€แŸ†แž แžปแžŸ แž แžพแž™แžแŸ‚แž˜แž‘แžถแŸ†แž„แž”แž„แŸ’แž€แžพแž“แž—แžถแž–แž‡แžฟแž‡แžถแž€แŸ‹แž“แŸƒแž€แžผแžŠแžŠแŸ„แž™แžŸแžถแžšแžแŸ‚แž›แž‘แŸ’แž’แž—แžถแž–แž“แŸƒแž€แžถแžšแž–แž„แŸ’แžšแžธแž€แŸ” แž€แžถแžšแžแŸ’แžšแžฝแžแž–แžทแž“แžทแžแŸ’แž™แž”แŸ’แžšแž—แŸแž‘แž‹แžทแžแžทแžœแž“แŸ’แž.

def http_error(แžŸแŸ’แžแžถแž“แž—แžถแž–)แŸ–
แžŸแŸ’แžแžถแž“แž—แžถแž–แž€แžถแžšแž”แŸ’แžšแž€แžฝแžแŸ–
แž€แžšแžŽแžธ แŸ แŸ–
แžแŸ’แžšแžกแž”แŸ‹ "แžŸแŸ†แžŽแžพแž˜แžทแž“แž›แŸ’แžข"
แž€แžšแžŽแžธ 401|403|404แŸ–
แžแŸ’แžšแžกแž”แŸ‹ "แž˜แžทแž“แžขแž“แžปแž‰แŸ’แž‰แžถแž"
แž€แžšแžŽแžธ แŸ แŸ–
แžแŸ’แžšแžกแž”แŸ‹แž˜แž€แžœแžทแž‰ "แžแŸ’แž‰แžปแŸ†แž‡แžถแž‘แžนแž€แžแŸ‚"
แž€แžšแžŽแžธ_แŸ–
แžแŸ’แžšแžกแž”แŸ‹ "แžขแŸ’แžœแžธแž•แŸ’แžŸแŸแž„แž‘แŸ€แž"

แžงแž‘แžถแž แžšแžŽแŸ แžขแŸ’แž“แž€โ€‹แžขแžถแž…โ€‹แžŸแŸ’แžšแžถแž™โ€‹แžœแžแŸ’แžแžปโ€‹ tuples แž”แž‰แŸ’แž‡แžธ แž“แžทแž„โ€‹แž›แŸ†แžŠแžถแž”แŸ‹โ€‹แžŠแŸ„แž™โ€‹แž”แŸ†แž–แžถแž“โ€‹แžŠแžพแž˜แŸ’แž”แžธโ€‹แž…แž„โ€‹แžขแžแŸแžšโ€‹แžŠแŸ„แž™โ€‹แž•แŸ’แžขแŸ‚แž€โ€‹แž›แžพโ€‹แžแž˜แŸ’แž›แŸƒโ€‹แžŠแŸ‚แž›โ€‹แž˜แžถแž“โ€‹แžŸแŸ’แžšแžถแž”แŸ‹แŸ” แžœแžถโ€‹แžแŸ’แžšแžผแžœโ€‹แž”แžถแž“โ€‹แžขแž“แžปแž‰แŸ’แž‰แžถแžโ€‹แž€แŸ’แž“แžปแž„โ€‹แž€แžถแžšโ€‹แž€แŸ†แžŽแžแŸ‹โ€‹แž‚แŸ†แžšแžผโ€‹แžŠแŸ‚แž›โ€‹แž”แžถแž“โ€‹แžŠแžถแž€แŸ‹โ€‹แž‚แŸ’แž“แžถ แž”แŸ’แžšแžพโ€‹แž›แž€แŸ’แžแžแžŽแŸ’แžŒ โ€œifโ€ แž”แž“แŸ’แžแŸ‚แž˜โ€‹แž‘แŸ€แžโ€‹แž€แŸ’แž“แžปแž„โ€‹แž‚แŸ†แžšแžผ แž”แŸ’แžšแžพโ€‹แžšแž”แžถแŸ†แž„แž˜แžปแž (โ€œ[x, y, *rest]โ€) แž€แžถแžšโ€‹แž‚แžผแžŸโ€‹แž•แŸ‚แž“แž‘แžธโ€‹แž‚แž“แŸ’แž›แžนแŸ‡/แžแž˜แŸ’แž›แŸƒ (แžงแž‘แžถแž แžšแžŽแŸ {โ€œbandwidthโ€: b, โ€œlatency โ€:l} แžŠแžพแž˜แŸ’แž”แžธแžŸแŸ’แžšแž„แŸ‹แžแž˜แŸ’แž›แŸƒ "bandwidth" แž“แžทแž„ "latency" แž“แžทแž„แžœแž…แž“แžถแž“แžปแž€แŸ’แžšแž˜) แžŸแŸ’แžšแž„แŸ‹แž‚แŸ†แžšแžผแžšแž„ (":=" operator) แž”แŸ’แžšแžพแž–แžถแž€แŸ’แž™ constants แž“แŸ…แž€แŸ’แž“แžปแž„ templateแŸ” แž“แŸ…แž€แŸ’แž“แžปแž„แžแŸ’แž“แžถแž€แŸ‹ แžœแžถแžขแžถแž…แž”แŸ’แžŠแžผแžšแžฅแžšแžทแž™แžถแž”แžแž•แŸ’แž‚แžผแž•แŸ’แž‚แž„แžแžถแž˜แž”แŸ†แžŽแž„แžŠแŸ„แž™แž”แŸ’แžšแžพแžœแžทแž’แžธแžŸแžถแžŸแŸ’แžแŸ’แžš โ€œ__match__()โ€แŸ”

แž–แžธแžแŸ’แž“แžถแž€แŸ‹แž‘แžทแž“แŸ’แž“แž“แŸแž™แž“แžถแŸ†แž…แžผแž›แžแŸ’แž“แžถแž€แŸ‹แž‘แžทแž“แŸ’แž“แž“แŸแž™

@แžแŸ’แž“แžถแž€แŸ‹แž‘แžทแž“แŸ’แž“แž“แŸแž™
แž–แžทแž“แŸ’แž‘แžปแžแŸ’แž“แžถแž€แŸ‹แŸ–
x: int
y: int

def whereis(แž…แŸ†แžŽแžปแž…):
แž…แŸ†แžŽแžปแž…แž”แŸ’แžšแž€แžฝแžแŸ–
แž€แžšแžŽแžธโ€‹แž…แŸ†แžŽแžปแž… (0, 0):
แž”แŸ„แŸ‡แž–แžปแž˜แŸ’แž– ("แž”แŸ’แžšแž—แž–แžŠแžพแž˜")
แž€แžšแžŽแžธโ€‹แž…แŸ†แžŽแžปแž… (0, y):
print(f"Y={y}")
แž€แžšแžŽแžธ Point(x,0)แŸ–
แž”แŸ„แŸ‡แž–แžปแž˜แŸ’แž–(f"X={x}")
แž€แžšแžŽแžธ Point():
แž”แŸ„แŸ‡แž–แžปแž˜แŸ’แž– ("แž€แž“แŸ’แž›แŸ‚แž„แž•แŸ’แžŸแŸแž„แž‘แŸ€แž")
แž€แžšแžŽแžธ_แŸ–
แž”แŸ„แŸ‡แž–แžปแž˜แŸ’แž– ("แž˜แžทแž“แž˜แŸ‚แž“แž‡แžถแž…แŸ†แžŽแžปแž…")

แž…แŸ†แžŽแžปแž…แž”แŸ’แžšแž€แžฝแžแŸ–
แž€แžšแžŽแžธ Point (x, y) แž”แŸ’แžšแžŸแžทแž“แž”แžพ x == y:
print(f"Y=X แž“แŸ… {x}")
แž€แžšแžŽแžธ Point(x,y)แŸ–
แž”แŸ„แŸ‡แž–แžปแž˜แŸ’แž– (f "แž˜แžทแž“แž“แŸ…แž›แžพแžขแž„แŸ’แž€แžแŸ‹แž‘แŸ’แžšแžผแž„")

แž€แŸ’แžšแž แž˜ แž”แŸƒแžแž„ แžแŸ€แžœ = แŸ , แŸก, แŸข
แž–แžŽแŸŒแžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž‚แŸ’แž“แžถแŸ–
แž€แžšแžŽแžธ .RED:
แž”แŸ„แŸ‡แž–แžปแž˜แŸ’แž– ("แžแŸ’แž‰แžปแŸ†แžƒแžพแž‰แž–แžŽแŸŒแž€แŸ’แžšแž แž˜!")
แž€แžšแžŽแžธ .GREEN:
แž”แŸ„แŸ‡แž–แžปแž˜แŸ’แž– ("แžŸแŸ’แž˜แŸ…แž‚แžบแž–แžŽแŸŒแž”แŸƒแžแž„")
แž€แžšแžŽแžธ .BLU
E:
แž”แŸ„แŸ‡แž–แžปแž˜แŸ’แž–(โ€œแžแŸ’แž‰แžปแŸ†แž˜แžถแž“แžขแžถแžšแž˜แŸ’แž˜แžŽแŸแžแžถแž–แžŽแŸŒแžแŸ€แžœ :(โ€œ)

แžŸแŸ†แžŽแžปแŸ†แž˜แžฝแž™แžแŸ’แžšแžผแžœแž”แžถแž“แžšแŸ€แž”แž…แŸ†แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž–แžทแž“แžทแžแŸ’แž™แžกแžพแž„แžœแžทแž‰ แž”แŸ†แžŽแŸ‡ แž‡แžถแž˜แžฝแž™แž“แžนแž„แž€แžถแžšแž–แžทแžŸแŸ„แž’แž“แŸ แž€แžถแžšแžขแž“แžปแžœแžแŸ’แž แž€แžถแžšแž”แž‰แŸ’แž‡แžถแž€แŸ‹แžŠแŸ‚แž›แž”แžถแž“แžŸแŸ’แž“แžพแžกแžพแž„ แž”แŸ‰แžปแž“แŸ’แžแŸ‚แž€แŸ†แžŽแŸ‚แž…แžปแž„แž€แŸ’แžšแŸ„แž™แž“แŸ…แžแŸ‚แž˜แžถแž“ แž”แžถแž“แž–แžทแž—แžถแž€แŸ’แžŸแžถแŸ” แžงแž‘แžถแž แžšแžŽแŸแŸ” แžแŸ’แžšแžผแžœแž”แžถแž“แž•แŸ’แžแž›แŸ‹แž‡แžผแž“ แž‡แŸ†แž“แžฝแžŸแžฑแŸ’แž™แž€แž“แŸ’แžŸแŸ„แž˜ "case _:" แžŸแž˜แŸ’แžšแžถแž”แŸ‹แžแž˜แŸ’แž›แŸƒแž›แŸ†แž“แžถแŸ†แžŠแžพแž˜ แžŸแžผแž˜แž”แŸ’แžšแžพแž–แžถแž€แŸ’แž™แž‚แž“แŸ’แž›แžนแŸ‡ "else:" แžฌ "default:" แž…แžถแž”แŸ‹แžแžถแŸ†แž„แž–แžธ "_" แž“แŸ…แž€แŸ’แž“แžปแž„แž”แžšแžทแž”แž‘แž•แŸ’แžŸแŸแž„แž‘แŸ€แžแžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ’แžšแžพแž‡แžถแžขแžแŸแžšแž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แŸ” แž€แŸแž˜แžถแž“แž…แž˜แŸ’แž„แž›แŸ‹แž•แž„แžŠแŸ‚แžšแž‚แžบ แžขแž„แŸ’แž‚แž€แžถแžšแž•แŸ’แž‘แŸƒแž€แŸ’แž“แžปแž„ แžŠแŸ‚แž›แž•แŸ’แžขแŸ‚แž€แž›แžพแž€แžถแžšแž”แž€แž”แŸ’แžšแŸ‚แž€แž“แŸ’แžŸแŸ„แž˜แžแŸ’แž˜แžธแž‘แŸ…แž‡แžถ bytecode แžŸแŸ’แžšแžŠแŸ€แž„แž“แžนแž„แžขแŸ’แžœแžธแžŠแŸ‚แž›แž”แŸ’แžšแžพแžŸแž˜แŸ’แžšแžถแž”แŸ‹ "if ... elif ... else" constructs แžŠแŸ‚แž›แž“แžนแž„แž˜แžทแž“แž•แŸ’แžแž›แŸ‹แž“แžผแžœแž€แžถแžšแžขแž“แžปแžœแžแŸ’แžแžŠแŸ‚แž›แž…แž„แŸ‹แž”แžถแž“แž“แŸ…แž–แŸแž›แžŠแŸ†แžŽแžพแžšแž€แžถแžšแžŸแŸ†แžŽแžปแŸ†แž“แŸƒแž€แžถแžšแž”แŸ’แžšแŸ€แž”แž’แŸ€แž”แžŠแŸแž’แŸ†แŸ”

แž”แŸ’แžšแž—แž–: opennet.ru

แž”แž“แŸ’แžแŸ‚แž˜แž˜แžแžทแž™แŸ„แž”แž›แŸ‹