Lansarea Python 3.8

Cele mai interesante noutăți:

  • Expresie atribuitoare:

    Noul operator := permite atribuirea valorilor variabilelor în interiorul expresiilor. De exemplu:
    if (n := len(a)) > 10:
    print(f"Lista este prea lungă ({n} elemente, așteptate <= 10)")

  • Argumente doar prin poziție:

    Acum poți specifica ce parametri ai funcțiilor pot fi transmiși prin sintaxa argumentelor numite și care nu. Exemplu:
    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) # eroare, `b` nu poate fi un argument numit
    f(10, 20, 30, 40, 50, f=60) # eroare, `e` trebuie să fie un argument numit

    Această modificare oferă dezvoltatorilor o modalitate de a proteja utilizatorii API-urilor lor de modificările numelui argumentelor funcțiilor.

  • Suport pentru f-string-uri = pentru expresii auto-documentante și depanare:

    A fost adăugat un sintaxă suplimentară pentru a simplifica mesajele de depanare/logare.
    n = 42
    print(f’Hello world {n=}.’)
    # напечатает "Hello world n=42."

  • Cuvântul cheie continue din blocul finally a fost corectat (anterior nu funcționa).

Altele:

  • Poți specifica explicit calea către cache-ul bytecode-ului în loc de __pycache__ implicit.
  • Construcțiile Debug și Release folosesc același ABI.

Sursa: linux.org.ru

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster