Vydanie Pythonu 3.8

Najzaujímavejšie inovácie:

  • Výraz zadania:

    Nový operátor := vám umožňuje priradiť hodnoty premenným vo výrazoch. Napríklad:
    if (n := len(a)) > 10:
    print(f"Zoznam je príliš dlhý ({n} prvkov, očakáva sa <= 10)")

  • Iba pozičné argumenty:

    Teraz môžete určiť, ktoré parametre funkcie možno odovzdať cez pomenovanú syntax argumentov a ktoré nie. Príklad:
    def f(a, b, /, c, d, *, e, f):
    tlačiť (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) # chyba, `b` nemôže byť pomenovaný argument
    f(10, 20, 30, 40, 50, f=60) # chyba, `e` musí byť pomenovaný argument

    Táto zmena poskytuje vývojárom spôsob, ako chrániť používateľov ich rozhraní API pred zmenami v názvoch argumentov funkcií.

  • Podpora f-strings = pre samodokumentovanie výrazov a ladenie:

    Pridaný cukor na zjednodušenie ladenia/protokolovania správ.
    n = 42
    print(f'Ahoj svet {n=}.')
    # vypíše "Ahoj svet n=42."

  • Opravené kľúčové slovo continue v bloku konečne (predtým to nefungovalo).

Ostatné:

  • Môžete explicitne zadať cestu k vyrovnávacej pamäti bajtového kódu namiesto predvolenej __pycache__.
  • Zostavy ladenia a vydania používajú rovnaké rozhranie ABI.

Zdroj: linux.org.ru

Pridať komentár