Uzziniet par aizraujošajām Python 3.12 funkcijām, kas atvieglos jūsu izstrādātāju dzīvi.

Python plāno izlaist valodas versiju 3.12 2023. gada oktobrī. Šī versija piedāvā virkni aizraujošu funkciju un uzlabojumu. Tās mērķis ir uzlabot jūsu kodēšanas pieredzi, piedāvājot efektīvāku un jaudīgāku platformu, kas ļauj uzlabot savas kodēšanas prasmes.

1. Uzlaboti kļūdu ziņojumi

Python ir nepārtraukti uzlabojis savus kļūdu ziņojumus jaunākajās versijās. The Laidienā 3.11 tika ieviesti precīzāki kļūdu ziņojumi norādot precīzas pozīcijas rindās.

Python 3.12 pārceļ šos uzlabojumus uz nākamo līmeni ar šādiem papildinājumiem:

  • Ieteikumi trūkstošajiem moduļiem ("vai aizmirsāt importēt X?") tagad ietver moduļus no standarta bibliotēkas.
  • Uzlaboti kļūdu ieteikumi bieži sastopamām sintakses kļūdām saistībā ar importēšanu. Piemēram, ja jums ir importēt p no m kodā tiks parādīta kļūda, kurā tiks jautāts, vai plānojat rakstīt no m importa lpp.
  • Konkrētā moduļa importēšanas kļūdas tagad ietver ieteikumus no importētā moduļa nosaukumvietas.
  • instagram viewer
  • NameError tagad ir iekļauti arī ieteikumi sevi pievienots nosaukumam, kad tas tiek izvirzīts klases instancē. Piemēram, ja vārds ātrumu nav definēts, tiks piedāvāts kļūdas ziņojums paš.ātrums kā potenciālu korekciju. Tas ir īpaši noderīgi, jo tiek izlaista sevi piemēram, mainīgie ir izplatīts kļūdu avots klases gadījumos.

2. Atbalsts Linux Perf Profiler

Plaši izmantotais Linux profilēšanas rīks, perf, tagad var strādāt ar Python 3.12 programmām. Agrāk tas koncentrējās tikai uz C līmeņa darbību izsekošanu Python izpildlaikā.

Izmantojot Python 3.12, tagad varat aktivizēt perf, lai apkopotu informāciju arī par Python programmām. Varat to aktivizēt vides līmenī vai Python programmā, izmantojot sys.activate_stack_trampoline funkciju.

3. Tipa mājienu uzlabojumi

Kopš tās ieviešanas Python 3.5 versijā Python tipa mājienu sintakse ir ļāvusi izkliedēšanas rīkiem iepriekš noteikt plašu kļūdu klāstu. Ar katru nākamo izlaidumu Python tipa sistēma ir attīstījusies, lai aptvertu plašāku lietošanas gadījumu klāstu, piedāvājot uzlabotas rakstīšanas funkcijas.

TypedDict

Python 3.12 ievieš TypedDicts izmantošana kā avots mājienu atslēgvārdu argumentiem funkcijās. Tas izmanto Unpack variadic vispārīgo versiju, kas tika ieviesta versijā 3.11.

Šeit ir piemērs, kas ilustrē šo funkciju:

klasēFilma(TypedDict):
nosaukums: str
gads: starpt

deffoo(**Kwargs: izpakojiet[filma]) -> Nav: ...

Šajā gadījumā funkcija foo var saņemt atslēgvārdu argumentus ar nosaukumiem un veidiem, kas atbilst Movie TypedDict saturam: nosaukums tipa str un gadā tipa starpt.

Šis uzlabojums izrādās vērtīgs, ja ievada funkcijas, kas pieņem izvēles tikai atslēgvārdu argumentus bez noklusējuma vērtībām.

Tips Parametrs Sintakse

Python 3.12 ievieš kodolīgāku sintaksi tipu norādīšanai vispārīgajās klasēs, funkcijās vai tipu aizstājvārdos.

Apsveriet tālāk norādīto.

# vecā metode
no rakstot imports TypeVar
_T = TypeVar("_T")
deffunc(a: _T, b: _T) -> _T:
...
# jaunā tipa parametru metode
deffunc[T](a: T, b: T) -> T:
...

Izmantojot jauno sintaksi, TypeVar nav īpaši jāimportē. Tā vietā varat izmantot func[T] sintakse, lai norādītu vispārīgas tipa atsauces. Ir iespējams arī definēt tipa robežas, piemēram, norādot, ka tipam ir jābūt vienam no tipu grupas. Tomēr paši šie veidi nevar būt vispārīgi. Šīs sintakses piemērs ir func[T: (str, int)].

4. Atkritumu kolekcija

Python versijā 3.12 atkritumu savākšanas (GC) mehānisms ir mainījies. Iepriekš GC darbojās ikreiz, kad tika piešķirts objekts.

Tomēr, sākot no Python 3.12, GC darbojas tikai eval breaker mehānisms Python baitkoda cilpā. Citiem vārdiem sakot, tas darbojas starp viena baitkoda izpildi un nākamo.

Turklāt GC aktivizējas arī tad, kad tiek izsaukts CPython signāla apstrādātāja pārbaudes mehānisms. Šī korekcija nodrošina periodisku atkritumu savākšanu ilgstošu zvanu laikā uz C paplašinājumiem ārpus izpildlaika.

Python 3.12 atklāšana

Python 3.12 ievieš virkni aizraujošu funkciju un uzlabojumu, mainot jūsu kodēšanas pieredzi. Ar uzlabotiem kļūdu ziņojumiem, uzlabotām rakstīšanas iespējām, Linux Perf Profiler atbalstu un optimizēta atkritumu savākšana, Python 3.12 nodrošina jūs ar rīkiem augstas kvalitātes koda rakstīšanai efektīvi. Izmantojiet Python spēku un paceliet savas kodēšanas prasmes jaunos augstumos.