KÔige huvitavamad uuendused:
- MÀÀramisavaldis:
Uus operaator := lubab mÀÀrata vÀÀrtusi muutujatele vÀljendite sees. NÀide:
if (n := len(a)) > 10:
print(f"Loend on liiga pikk ({n} elementi, oodatud <= 10)") - Ainult positsioonilised argumendid:
NĂŒĂŒd saab tĂ€psustada, milliseid funktsiooni parameetreid saab edastada nimelise argumendi sĂŒntaksiga ja milliseid mitte. NĂ€ide:
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) # viga, `b` ei saa olla nimeline argument
f(10, 20, 30, 40, 50, f=60) # viga, `e` peab olema nimeline argumentSee muudatus annab arendajatele viisi kaitsta oma API kasutajaid funktsioonide argumentide nimetuste muutumise eest.
- f-stringide toetus = isedokumenteerivate vÀljendite ja silumise jaoks:
Lisa hÔlbustamiseks silumise/logimise sÔnumeid.
n = 42
print(fâTere maailm {n=}.â)
# ĐœĐ°ĐżĐ”ŃаŃĐ°Đ”Ń "Hello world n=42." - Parandatud jĂ€tka mĂ€rksĂ”na finally plokis (enne ei töötanud).
Muud:
- Saab selgelt mÀÀrata vahemÀlu tee bytecode'i jaoks, mitte vaikimisi __pycache__.
- Debug ja Release kogumid kasutavad sama ABI.
Allikas: linux.org.ru
