Ka është lëshuar një version i ri stabil i gjuhës së programimit të njohur Python.
Python është një gjuhë programimi e nivelit të lartë, e përgjithshme, që fokusohet në rritjen e produktivitetit të zhvilluesve dhe lexueshmërisë së kodit. Veçoritë kryesore përfshijnë tipizimin dinamik, menaxhimin automatik të memories, introspeksionin e plotë, mekanizmin për trajtimin e përjashtimeve dhe mbështetje për llogaritjet shumë-fitore, si dhe struktura të dhënash të nivelit të lartë.
Python është një gjuhë e qëndrueshme dhe e shpërndarë gjerësisht. Ai përdoret në shumë projekte dhe në cilësi të ndryshme: si gjuhë kryesore e programimit ose për krijimin e zgjerimeve dhe integrimin e aplikacioneve. Fushat kryesore të aplikimit përfshijnë zhvillimin e uebit, mësimin e makinave dhe analizën e të dhënave, automatizimin dhe administrimin sistemik. Aktualisht Python zë vendin e tretë në renditjen e TIOBE. TIOBE.
Ndryshimet kryesore:
Një analizues sintaksor me performancë të lartë të bazuar në gramatika PEG.
Në versionin e ri, parseri aktual i Python bazuar në gramatikat LL(1) (gramatika K/S) është zëvendësuar me një analizator sintaksor të ri me performancë të lartë dhe stabil mbi bazën e PEG (gramatika R/V). Analizatorët për gjuhët e prezantuara nga gramatikat K/S, si analizatorët LR, kërkojnë një hap të veçantë të analizës leksikore që ndan të dhënat hyrëse sipas hapësirave, pikave dhe kështu me radhë. Kjo është e nevojshme, pasi këta analizatorë përdorin analiza paraprake për të trajtuar disa gramata K/S në kohë lineare. Gramatikat R/V nuk kërkojnë një hap të veçantë të analizës leksikore, dhe rregullat për të mund të vendosen së bashku me rregullat e tjera të gramatikës.
Operatorë dhe funksione të reja
Dy operatorë të rinj janë shtuar në klasën e integruar dict, | për bashkimin e fjalorëve dhe |= për përditësimin.
Dy funksione të reja janë shtuar në klasën str: str.removeprefix(prefix) dhe str.removesuffix(suffix).
Sugjerim tipi për tipet e integruara të koleksioneve
Në këtë version është përfshirë mbështetje për sintaksën e gjeneratorëve në të gjitha koleksionet standarde që janë aktualisht të disponueshme.
def read_blog_tags(tags: list[str]) -> None:
for tag in tags:
print("Emri i Tag-it", tag)
Ndryshime të tjera
PEP 573 Aksesimi në statusin e modulit përmes metodave të zgjerimit C
PEP 593 Funksione dhe variabla fleksibël të annotimeve
PEP 602 Python kalon në lëshime stabilë vjetore
PEP 614 Zbutja e kufizimeve gramatikore për dekoratorët
PEP 615 Mbështetje për bazën e të dhënave IANA për zona kohore në bibliotekën standarde
BPO 38379 grumbullimi i mbeturinave nuk bllokohet në objektet e rikuperuara
BPO 38692 os.pidfd_open, për menaxhimin e proceseve pa gara dhe sinjale;
BPO 39926 mbështetje për Unicode është përmirësuar në versionin 13.0.0
BPO 1635741, gjatë inicializimit të shumëfishtë të Python në të njëjtin proces, nuk ka më rrjedhje memorjeje
Koleksionet Python (range, tuple, set, frozenset, list, dict) janë përshpejtuar me thirrjet vektoriale PEP 590
Disa module Python (_abc, audioop, _bz2, _codecs, _contextvars, _crypt, _functools, _json, _locale, operator, resurs, time, _weakref) tani përdorin inicializimin më të shumëfishtë, siç përcaktohet në PEP 489
Një sërë modulesh standarde të bibliotekave (audioop, ast, grp, _hashlib, pwd, _posixsubprocess, random, select, struct, termios, zlib) tani përdorin ABI të qëndrueshëm të përcaktuar nga PEP 384.
Burimi: linux.org.ru
