Python 3.8 julkaisu

Mielenkiintoisimmat innovaatiot:

  • Tehtävän ilmaus:

    Uuden :=-operaattorin avulla voit määrittää arvoja lausekkeiden muuttujille. Esimerkiksi:
    jos (n := len(a)) > 10:
    print(f"Lista on liian pitkä ({n} elementtiä, odotettavissa <= 10)")

  • Vain sijaintiargumentit:

    Voit nyt määrittää, mitkä funktioparametrit voidaan välittää nimetyn argumenttisyntaksin kautta ja mitkä ei. Esimerkki:
    def f(a, b, /, c, d, *, e, f):
    tulosta(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) # virhe, "b" ei voi olla nimetty argumentti
    f(10, 20, 30, 40, 50, f=60) # virhe, "e" on nimetty argumentti

    Tämä muutos antaa kehittäjille tavan suojata API-käyttäjiensä funktion argumenttien nimien muutoksilta.

  • Tuki f-strings = itsedokumentointiin ja virheenkorjaukseen:

    Lisätty sokeria yksinkertaistamaan virheenkorjausta/viestien kirjaamista.
    n = 42
    print(f'Hei maailma {n=}.')
    # tulostaa "Hello world n=42."

  • Jatka-avainsana korjattu viimeiseen lohkoon (se ei toiminut aiemmin).

Muut:

  • Voit määrittää nimenomaisesti polun tavukoodivälimuistiin oletusarvon __pycache__ sijaan.
  • Debug and Release -koontiversiot käyttävät samaa ABI:ta.

Lähde: linux.org.ru

Lisää kommentti