Vydání Pythonu 3.8

Nejzajímavější inovace:

  • Výraz zadání:

    Nový operátor := umožňuje přiřadit hodnoty proměnným ve výrazech. Například:
    if (n := len(a)) > 10:
    print(f"Seznam je příliš dlouhý ({n} prvků, očekává se <= 10)")

  • Pouze poziční argumenty:

    Nyní můžete určit, které parametry funkce lze předat syntaxí pojmenovaných argumentů a které nikoli. Příklad:
    def f(a, b, /, c, d, *, e, f):
    tisknout (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 být pojmenovaný argument
    f(10, 20, 30, 40, 50, f=60) # chyba, `e` musí být pojmenovaný argument

    Tato změna poskytuje vývojářům způsob, jak chránit uživatele jejich rozhraní API před změnami názvů argumentů funkcí.

  • Podpora f-strings = pro samodokumentování výrazů a ladění:

    Přidán cukr pro zjednodušení ladění/protokolování zpráv.
    n = 42
    print(f'Ahoj světe {n=}.')
    # vytiskne "Ahoj světe n=42."

  • Opraveno klíčové slovo continue v bloku nakonec (dříve nefungovalo).

Ostatní:

  • Místo výchozí __pycache__ můžete explicitně zadat cestu k mezipaměti bajtového kódu.
  • Sestavení ladění a vydání používají stejné rozhraní ABI.

Zdroj: linux.org.ru

Přidat komentář