Python 3.9.0

En ny stabil version af det populære programmeringssprog Python er blevet udgivet.

Python er et højniveau programmeringssprog, der er designet til at forbedre udviklerens produktivitet og læsbarheden af koden. Hovedtræk inkluderer dynamisk typning, automatisk hukommelsesstyring, fuld introspektion, undtagelseshåndtering og understøttelse af multitrådet beregning samt højniveau datatyper.

Python er et stabilt og udbredt sprog. Det bruges i mange projekter og på forskellige niveauer: som hovedprogrammeringssprog eller til at oprette udvidelser og integrere applikationer. De primære anvendelsesområder er webudvikling, maskinlæring, dataanalyse, automatisering og systemadministration. I øjeblikket indtager Python tredjepladsen på ranglisten. TIOBE.

Vigtige ændringer:

En ny højtydende parser baseret på PEG-grammatik.

I den nye version er den nuværende Python-parser baseret på LL(1) grammatik blevet erstattet med en ny højtydende og stabil parser baseret på PEG (præcedens grammatik). Parsere for sprog, der repræsenteres ved kontekstfrie grammatikker såsom LR-parsere, kræver en særlig leksikalsk analysestrin, der opdeler input baseret på mellemrum, tegnsætning osv. Dette er nødvendigt, da disse parsere bruger foranalyse til at behandle visse kontekstfrie grammatikker i lineær tid. Præcedens grammatikker kræver ikke et separat leksikalsk analysestrin, og reglerne for dette kan indarbejdes sammen med andre grammatikregler.

Nye operatorer og funktioner

Der er tilføjet to nye operatorer i den indbyggede dict-klasse: | til at fusionere ordbøger og |= til at opdatere.

Der er tilføjet to nye funktioner til str-klassen: str.removeprefix(præfiks) og str.removesuffix(suffiks).

Typehint for indbyggede samlingstyper

Denne version inkluderer understøttelse af generator-syntaks i alle nuværende standard-samlinger.

def read_blog_tags(tags: list[str]) -> None:
for tag in tags:
print("Tag Navn", tag)

Andre ændringer

  • PEP 573 Adgang til modulens tilstand via C-udvidelsesmetoder

  • PEP 593 Fleksible funktioner og variabelannoteringer

  • PEP 602 Python overgår til årlige stabile udgivelser

  • PEP 614 Lempelse af grammatiske begrænsninger på dekoratorer

  • PEP 615 Support for IANA time zone database in the standard library

  • BPO 38379 garbage collection is not blocked on reclaimed objects

  • BPO 38692 os.pidfd_open, for managing processes without races and signals;

  • BPO 39926 Unicode support has been updated to version 13.0.0

  • BPO 1635741, multiple initializations of Python in the same process no longer cause memory leaks

  • Python collections (range, tuple, set, frozenset, list, dict) have been accelerated using vector call PEP 590

  • Some Python modules (_abc, audioop, _bz2, _codecs, _contextvars, _crypt, _functools, _json, _locale, operator, resource, time, _weakref) now use multi-phase initialization as defined in PEP 489

  • A number of standard library modules (audioop, ast, grp, _hashlib, pwd, _posixsubprocess, random, select, struct, termios, zlib) now use a stable ABI as defined in PEP 384.

Kilde: linux.org.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster