De mest intressanta nyheterna:
- Tilldelande uttryck:
Den nya operatorn := tillÄter att tilldela vÀrden till variabler inom uttryck. Till exempel:
if (n := len(a)) > 10:
print(f"Listan Àr för lÄng ({n} element, förvÀntade <= 10)") - Endast positionsargument:
Nu kan man ange vilka funktionsparametrar som kan överföras genom syntaxen för namngivna argument, och vilka som inte kan. Exempel:
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) # fel, `b` kan inte vara ett namngivet argument
f(10, 20, 30, 40, 50, f=60) # fel, `e` mÄste vara ett namngivet argumentDenna Àndring ger utvecklare ett sÀtt att skydda anvÀndarna av sina API:er frÄn förÀndringar i funktionsargumentens namn.
- Stöd för f-strÀngar = för sjÀlv-dokumenterande uttryck och felsökning:
Tillsatt socker för att förenkla debugger-/loggmeddelanden.
n = 42
print(fâHej vĂ€rlden {n=}.â)
# ĐœĐ°ĐżĐ”ŃаŃĐ°Đ”Ń "Hello world n=42." - Fixat nyckelordet continue i finally-blocket (det fungerade inte tidigare).
Ăvrigt:
- Kan explicit ange sökvÀgen till bytekodets cache istÀllet för standard __pycache__.
- Debug- och Release-versioner anvÀnder samma ABI.
KĂ€lla: linux.org.ru
