Verze Pythonu 3.8

Nejzajímavější novinky:

  • Přiřazovací výraz:

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

  • Položkově pouze argumenty:

    Nyní je možné určit, které parametry funkcí mohou být předávány pomocí syntaxe pojmenovaných argumentů, a které nikoli. Příklad:
    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) # 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 dává vývojářům způsob, jak chránit uživatele svých API před změnami v názvech argumentů funkcí.

  • Podpora f-řetězců = pro sebedokumentující výrazy a ladění:

    Přidána syntaktická cukr pro zjednodušení ladících/loggujících zpráv.
    n = 42
    print(f'Hello world {n=}.')
    # напечатает "Hello world n=42."

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

Ostatní:

  • Lze explicitně určit cestu k mezipaměti bajtkódu místo výchozího __pycache__.
  • Debug a Release sestavení používají stejný ABI.

Zdroj: linux.org.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster