Python 3.8 väljalase

Kõige huvitavamad uuendused:

  • Ülesande väljend:

    Uus operaator := võimaldab määrata avaldiste sees olevatele muutujatele väärtusi. Näiteks:
    kui (n := len(a)) > 10:
    print(f"Loend on liiga pikk ({n} elementi, eeldatavasti <= 10)")

  • Ainult positsioonilised argumendid:

    Nüüd saate määrata, milliseid funktsiooni parameetreid saab nimelise argumendi süntaksi kaudu edastada ja milliseid mitte. Näide:
    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) # viga, „b” ei saa olla nimega argument
    f(10, 20, 30, 40, 50, f=60) # viga, "e" peab olema nimega argument

    See muudatus annab arendajatele võimaluse kaitsta oma API-de kasutajaid funktsioonide argumentide nimede muutumise eest.

  • Toetage f-stringe = avaldiste enesedokumenteerimiseks ja silumiseks:

    Lisatud suhkur, et lihtsustada silumist/logimist.
    n = 42
    print(f'Tere maailm, {n=}.')
    # prindib "Tere maailm n=42".

  • Parandasin lõpuks plokis jätkamise märksõna (varem see ei töötanud).

Muu:

  • Vaikimisi __pycache__ asemel saate määrata baitkoodi vahemälu tee.
  • Silumis- ja väljalaskejärgud kasutavad sama ABI-d.

Allikas: linux.org.ru

Lisa kommentaar