ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ Π½ΠΎΠ²ΡΠ΅ΡΡΠ²Π°:
- ΠΡΠΈΡΠ²Π°ΠΈΠ²Π°ΡΡΠ΅Π΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅:
ΠΠΎΠ²ΡΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ := ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ Π²Π½ΡΡΡΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
if (n := len(a)) > 10:
print(f"List is too long ({n} elements, expected <= 10)") - Positional-only Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ:
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ ΡΠ΅ΡΠ΅Π· ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ², Π° ΠΊΠ°ΠΊΠΈΠ΅ Π½Π΅Ρ. ΠΡΠΈΠΌΠ΅Ρ:
def f(a, b, /, c, d, *, e, f):
print(a, b, c, d, e, f)f(10, 20, 30, d=40, e=50, f=60) # OK
f(10, b=20, c=30, d=40, e=50, f=60) # ΠΎΡΠΈΠ±ΠΊΠ°, `b` Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠΌ
f(10, 20, 30, 40, 50, f=60) # ΠΎΡΠΈΠ±ΠΊΠ°, `e` ΠΎΠ±ΡΠ·Π°Π½ Π±ΡΡΡ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠΌΠΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΡΠΏΠΎΡΠΎΠ± ΠΎΠ±Π΅Π·ΠΎΠΏΠ°ΡΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΡΠ²ΠΎΠΈΡ API ΠΎΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π½Π°Π·Π²Π°Π½ΠΈΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΉ.
- ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° f-ΡΡΡΠΎΠΊΠ°ΠΌΠΈ = Π΄Π»Ρ ΡΠ°ΠΌΠΎΠ΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΡΡΠΈΡ
Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΎΡΠ»Π°Π΄ΠΊΠΈ:
ΠΠΎΠ±Π°Π²Π»Π΅Π½ ΡΠ°Ρ Π°Ρ Π΄Π»Ρ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΡ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΡΡ /Π»ΠΎΠ³Π³ΠΈΡΡΡΡΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ.
n = 42
print(f’Hello world {n=}.’)
# Π½Π°ΠΏΠ΅ΡΠ°ΡΠ°Π΅Ρ "Hello world n=42." - ΠΡΠΏΡΠ°Π²Π»Π΅Π½ΠΎ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ continue Π² Π±Π»ΠΎΠΊΠ΅ finally (ΡΠ°Π½ΡΡΠ΅ ΠΎΠ½ΠΎ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ).
ΠΡΠΎΡΠ΅Π΅:
- ΠΠΎΠΆΠ½ΠΎ ΡΠ²Π½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΏΡΡΡ ΠΊ ΠΊΡΡΡ Π±Π°ΠΉΡΠΊΠΎΠ΄Π° Π²ΠΌΠ΅ΡΡΠΎ Π΄Π΅ΡΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ __pycache__.
- Debug ΠΈ Release ΡΠ±ΠΎΡΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ABI.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: linux.org.ru