Versió de Python 3.8

Les novetats més interessants:

  • Expressió de la tasca:

    El nou operador := us permet assignar valors a variables dins d'expressions. Per exemple:
    si (n := len(a)) > 10:
    print(f"La llista és massa llarga ({n} elements, s'espera <= 10)")

  • Arguments només posicionals:

    Ara podeu especificar quins paràmetres de funció es poden passar a través de la sintaxi de l'argument anomenada i quins no. Exemple:
    def f(a, b, /, c, d, *, e, f):
    imprimir (a, b, c, d, e, f)

    f(10, 20, 30, d=40, e=50, f=60) # D'acord
    f(10, b=20, c=30, d=40, e=50, f=60) # error, `b` no pot ser un argument amb nom
    f(10, 20, 30, 40, 50, f=60) # error, `e` ha de ser un argument amb nom

    Aquest canvi ofereix als desenvolupadors una manera de protegir els usuaris de les seves API dels canvis en els noms dels arguments de les funcions.

  • Suport cadenes f = per a expressions autodocumentades i depuració:

    S'ha afegit sucre per simplificar els missatges de depuració/registre.
    n = 42
    print(f'Hola món {n=}.')
    # imprimirà "Hola món n=42".

  • S'ha corregit la paraula clau continue al bloc finally (abans no funcionava).

Altres:

  • Podeu especificar explícitament el camí a la memòria cau del bytecode en lloc del __pycache__ predeterminat.
  • Les compilacions de depuració i llançament utilitzen el mateix ABI.

Font: linux.org.ru

Afegeix comentari