Den nya stabila versionen av det populÀra programmeringssprÄket Python har slÀppts.
Python Àr ett hög nivÄ programmeringssprÄk för allmÀnna ÀndamÄl, som syftar till att öka utvecklarens produktivitet och lÀsbarheten av koden. Huvuddrag inkluderar dynamisk typning, automatisk minneshantering, full introspektion, undantagshantering, stöd för flertrÄdad berÀkning och hög nivÄ datatyper.
Python Àr ett stabilt och utbrett sprÄk. Det anvÀnds i mÄnga projekt och i olika sammanhang: som huvudsprÄk eller för att skapa tillÀgg och integrera applikationer. Huvudsakliga anvÀndningsomrÄden: webbprogrammering, maskininlÀrning och dataanalys, automatisering och systemadministration. För nÀrvarande placerar sig Python som tredje i rankingen TIOBE.
Huvudsakliga förÀndringar:
En ny högpresterande parser baserad pÄ PEG-grammatiker.
I den nya versionen har den nuvarande Python-parsern, som Àr baserad pÄ LL(1) (kontextfria grammatik), ersatts av en ny högpresterande och stabil parser baserad pÄ PEG (rörlig grammatik). Parsrar för sprÄk som representeras av kontextfria grammatik, sÄsom LR-parsrar, krÀver ett speciellt lexikalt analyssteg som bryter ner indata enligt mellanslag, interpunktion och sÄ vidare. Detta Àr nödvÀndigt eftersom dessa parsrar anvÀnder en föranalys för att bearbeta vissa kontextfria grammatik i linjÀr tid. Rörliga grammatik krÀver inte nÄgot separat lexikalt analyssteg, och regler för det kan integreras med andra grammatikregler.
Nya operatorer och funktioner
TvÄ nya operatorer, | för att slÄ samman ordböcker och |= för att uppdatera, har lagts till den inbyggda klassen dict.
TvÄ nya funktioner har lagts till klassen str: str.removeprefix(prefix) och str.removesuffix(suffix).
Typanvisning för inbyggda samlingstyper
I denna release ingÄr stöd för generatorns syntax i alla standardkollektioner som för nÀrvarande finns.
def read_blog_tags(tags: list[str]) -> None:
for tag in tags:
print("Tag Name", tag)
Ăvriga förĂ€ndringar
PEP 573 à tkomst till tillstÄndet av modulen via C-extensionsmetoder
PEP 593 Flexibla funktioner och variabelanvisningar
PEP 602 Python gÄr över till Ärliga stabila releaser
PEP 614 Mjukvaror grammatiska begrÀnsningar för dekoratorer
PEP 615 Stöd för IANA:s tidszonsdatabas i standardbiblioteket
BPO 38379 skrÀpsamling blockeras inte pÄ ÄterstÀllda objekt
BPO 38692 os.pidfd_open, för att hantera processer utan kapplöpning och signaler;
BPO 39926 Unicode-stödet har uppdaterats till version 13.0.0
BPO 1635741, vid flera initieringar av Python i samma process sker det ingen minneslÀcka lÀngre
Python-kollektioner (range, tuple, set, frozenset, list, dict) har accelererats med hjÀlp av vektoranrop PEP 590
Vissa Python-moduler (_abc, audioop, _bz2, _codecs, _contextvars, _crypt, _functools, _json, _locale, operator, resource, time, _weakref) anvÀnder nu flerfasinitering, som definieras i PEP 489
En rad standardbiblioteksmoduler (audioop, ast, grp, _hashlib, pwd, _posixsubprocess, random, select, struct, termios, zlib) anvÀnder nu ett stabilt ABI, definierat av PEP 384.
KĂ€lla: linux.org.ru
