Python 3.9.0

Populaarse Pythoni programmeerimiskeele uus stabiilne väljalase on välja antud.

Python on kõrgetasemeline üldotstarbeline programmeerimiskeel, mille eesmärk on parandada arendaja tootlikkust ja koodi loetavust. Peamised funktsioonid on dünaamiline tippimine, automaatne mäluhaldus, täielik sisekaemus, erandite käsitlemise mehhanism, mitme lõimega andmetöötluse tugi, kõrgetasemelised andmestruktuurid.

Python on stabiilne ja laialt levinud keel. Seda kasutatakse paljudes projektides ja erinevatel võimalustel: peamise programmeerimiskeelena või laienduste ja rakenduste integreerimise loomiseks. Peamised kasutusvaldkonnad: veebiarendus, masinõpe ja andmeanalüüs, automatiseerimine ja süsteemihaldus. Python on hetkel edetabelis kolmandal kohal TIOBE.

Peamised muudatused:

Uus suure jõudlusega parser, mis põhineb PEG-grammatikatel.

Uues versioonis asendatakse senine LL(1) grammatikatel põhinev Pythoni parser (KS-grammatika) uue suure jõudlusega ja stabiilse PEG-il (PB-grammatika) põhineva parseriga. KS-i grammatikatega esindatud keelte parserid, näiteks LR-parserid, nõuavad spetsiaalset leksikaalse analüüsi etappi, mis jagab sisendi tühikute, kirjavahemärkide jms järgi. See on vajalik, kuna need analüüsijad kasutavad mõnede KS-i grammatikate lineaarseks töötlemiseks ettevalmistamist. RV grammatikad ei vaja eraldi leksikaalse analüüsi etappi ja selle reeglid saab kehtestada koos teiste grammatikareeglitega.

Uued operaatorid ja funktsioonid

Sisseehitatud dikteerimisklassi on lisatud kaks uut operaatorit | sõnaraamatute liitmiseks ja |= uuendamiseks.

Klassi str on lisatud kaks uut funktsiooni: str.removeprefix(prefix) ja str.removesuffix(suffix).

Sisseehitatud kogutüüpide tüübi vihje

See versioon sisaldab generaatori süntaksi tuge kõigis praegu saadaolevates standardkogudes.

def read_blog_tags(sildid: list[str]) -> Puudub:
siltides olevate siltide jaoks:
print ("Märgendi nimi", silt)

Muud muudatused

  • PEP 573 Juurdepääs mooduli olekule C laiendusmeetodite abil

  • PEP 593 Paindlikud funktsioonid ja muutuvad märkused

  • PEP 602 Python liigub iga-aastastele stabiilsetele väljaannetele

  • PEP 614 Lõõgastavad grammatikapiirangud dekoraatoritele

  • PEP 615 IANA ajavööndi andmebaasi tugi standardraamatukogus

  • BPO 38379 Prügikoristus ei blokeeri taastatud objekte

  • BPO 38692 os.pidfd_open protsesside juhtimiseks ilma võistluste ja signaalideta;

  • BPO 39926 Unicode'i tugi värskendati versioonile 13.0.0

  • BPO 1635741, Python ei leki enam Pythoni initsialiseerimisel sama protsessi käigus mitu korda

  • Pythoni kogud (vahemik, korteež, komplekt, külmutatud, loend, dikt) kiirendatud PEP 590 vektorkutsega

  • Mõned Pythoni moodulid (_abc, audioop, _bz2, _codecs, _contextvars, _crypt, _functools, _json, _locale, operaator, ressurss, aeg, _weakref) kasutavad nüüd mitmefaasilist lähtestamist, nagu on määratletud dokumendis PEP 489

  • Mitmed standardsed teegimoodulid (audioop, ast, grp, _hashlib, pwd, _posixsubprocess, random, select, struct, termios, zlib) kasutavad nüüd PEP 384 poolt määratletud stabiilset ABI-d.

Allikas: linux.org.ru

Lisa kommentaar