Python 3.8 udgivelse

De mest interessante innovationer:

  • Opgaveudtryk:

    Den nye := operator giver dig mulighed for at tildele værdier til variabler i udtryk. For eksempel:
    hvis (n := len(a)) > 10:
    print(f"Listen er for lang ({n} elementer, forventet <= 10)")

  • Kun positionelle argumenter:

    Du kan nu angive, hvilke funktionsparametre der kan sendes gennem navngivne argumentsyntaks, og hvilke der ikke kan. Eksempel:
    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) # fejl, "b" kan ikke være et navngivet argument
    f(10, 20, 30, 40, 50, f=60) # fejl, "e" skal være et navngivet argument

    Denne ændring giver udviklere en måde at beskytte brugere af deres API'er mod ændringer i funktionsargumentnavne.

  • Support f-strenge = til selvdokumenterende udtryk og fejlretning:

    Tilsat sukker for at forenkle fejlfinding/logning af beskeder.
    n = 42
    print(f'Hej verden {n=}.')
    # vil udskrive "Hej verden n=42."

  • Rettede fortsæt søgeordet i finally-blokken (det virkede ikke før).

Andre:

  • Du kan eksplicit angive stien til bytecode-cachen i stedet for standard __pycache__.
  • Debug og Release builds bruger den samme ABI.

Kilde: linux.org.ru

Tilføj en kommentar