Izdaja Python 3.8

Najbolj zanimive novosti:

  • Izraz dodelitve:

    Novi operator := omogoča dodeljevanje vrednosti spremenljivkam znotraj izrazov. Na primer:
    če (n := len(a)) > 10:
    print(f"Seznam je predolg ({n} elementov, pričakovano <= 10)")

  • Samo pozicijski argumenti:

    Zdaj lahko določite, katere parametre funkcije je mogoče posredovati skozi sintakso imenovanih argumentov in katere ne. primer:
    def f(a, b, /, c, d, *, e, f):
    natisni (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) # napaka, `b` ne more biti imenovan argument
    f(10, 20, 30, 40, 50, f=60) # napaka, `e` mora biti imenovani argument

    Ta sprememba omogoča razvijalcem, da zaščitijo uporabnike svojih API-jev pred spremembami imen argumentov funkcij.

  • Podpora f-nizov = za samodokumentiranje izrazov in odpravljanje napak:

    Dodan sladkor za poenostavitev sporočil za odpravljanje napak/beleženje.
    n = 42
    print(f'Pozdravljen svet {n=}.')
    # bo natisnil "Hello world n=42."

  • Popravljena ključna beseda continue v bloku finally (prej ni delovala).

Drugo:

  • Namesto privzetega __pycache__ lahko izrecno določite pot do predpomnilnika bajtne kode.
  • Zgradbe Debug in Release uporabljajo isti ABI.

Vir: linux.org.ru

Dodaj komentar