Python 3.9.0

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

Köp pålitlig webbhotell med DDoS-skydd, VPS VDS-servrar 🔥 Köp pålitlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster