Ismerje meg a Python 3.12 izgalmas funkcióit, amelyek megkönnyítik a fejlesztő életét.

A Python 2023 októberében tervezi a nyelv 3.12-es verziójának kiadását. Ez a verzió izgalmas funkciók és fejlesztések sorát kínálja. Célja, hogy javítsa a kódolási élményt egy hatékonyabb és erőteljesebb platform felkínálásával, amely lehetővé teszi kódolási készségeinek fejlesztését.

1. Továbbfejlesztett hibaüzenetek

A Python a legutóbbi verziókban folyamatosan javította hibaüzeneteit. A A 3.11-es kiadás pontosabb hibaüzeneteket vezetett be sorokon belüli pontos pozíciók feltüntetésével.

A Python 3.12 ezeket a fejlesztéseket a következő szintre emeli a következő kiegészítésekkel:

  • A hiányzó modulokra vonatkozó javaslatok ("elfelejtetted importálni az X-et?") mostantól a szabványos könyvtár moduljait is magukban foglalják.
  • Továbbfejlesztett hibajavaslatok az importálással kapcsolatos gyakori szintaktikai hibákhoz. Például, ha van import p-t m-ből kódjában hibaüzenet jelenik meg, amely megkérdezi, hogy szándékozott-e írni m importból p.
  • instagram viewer
  • Az adott modul importálási hibái most az importált modul névteréből származó javaslatokat tartalmaznak.
  • NameError javaslatok most is beépülnek maga hozzáadva a névhez, amikor egy osztálypéldányon belül emelkedik. Például, ha a név sebesség nincs megadva, a hibaüzenet javasolja önmaga.sebesség potenciális korrekcióként. Ez különösen hasznos a kihagyás miatt maga Például a változók gyakori hibaforrások az osztálypéldányokban.

2. A Linux Perf Profiler támogatása

A széles körben használt Linux profilkészítő eszköz, perf, most már a Python 3.12 programokkal is együttműködhet. Korábban csak a C-szintű műveletek nyomon követésére összpontosított a Python futási idején belül.

A Python 3.12-vel immár aktiválhatja a perf-et, hogy a Python-programokról is adatokat gyűjtsön. Aktiválhatja a környezet szintjén vagy egy Python programon belül a segítségével sys.activate_stack_trampoline funkció.

3. Tippjavítások

A Python 3.5-ös verziójában való bevezetése óta a Python típus-hivatkozás szintaxisa lehetővé tette a linting eszközöknek a hibák széles skálájának előre történő észlelését. A Python típusrendszere minden további kiadással a használati esetek szélesebb körét öleli fel, továbbfejlesztett gépelési funkciókat kínálva.

TypedDict

A Python 3.12 bemutatja a TypedDicts használata forrásként a kulcsszóargumentumok utalásához a függvényekben. Ez az Unpack variadic általánost használja, amelyet a 3.11-es verzió vezetett be.

Íme egy példa a funkció illusztrálására:

osztályFilm(TypedDict):
név: str
évfolyam: int

deffoo(**kwargs: Kicsomagolás[film]) -> Egyik sem: ...

Ebben az esetben a függvény foo kulcsszó-argumentumokat kaphat olyan nevekkel és típusokkal, amelyek illeszkednek a Movie TypedDict tartalmához: név típusú str és év típusú int.

Ez a továbbfejlesztés értékesnek bizonyul, ha olyan típusú tippelési funkciókat használnak, amelyek elfogadják az opcionális, csak kulcsszóra vonatkozó argumentumokat alapértelmezett értékek nélkül.

Paraméter Szintaxis típusa

A Python 3.12 tömörebb szintaxist vezet be a típusok megadásához az általános osztályokban, függvényekben vagy típusálnevekben.

Tekintsük a következő:

# a régi módszer
tól től gépelés import TypeVar
_T = TypeVar("_T")
deffunc(a: _T, b: _T) -> _T:
...
# az új típusú paraméter módszer
deffunc[T](a: T, b: T) -> T:
...

Az új szintaxissal nincs szükség a TypeVar explicit importálására. Ehelyett használhatja a func[T] szintaxis az általános típushivatkozások jelzésére. Lehetőség van típushatárok definiálására is, például annak megadására, hogy a típusnak egy típuscsoport egyikének kell lennie. Ezek a típusok azonban önmagukban nem lehetnek általánosak. Egy példa erre a szintaxisra func[T: (str, int)].

4. Szemétgyüjtés

A Python 3.12-ben a szemétgyűjtő (GC) mechanizmus megváltozott. Korábban a GC futott, amikor egy objektumot lefoglaltak.

A Python 3.12-től kezdődően azonban a GC kizárólag a eval megszakító mechanizmus a Python bájtkód hurokban. Más szóval, az egyik bájtkód végrehajtása és a következő bájtkód végrehajtása között fut.

Ezenkívül a GC akkor is aktiválódik, ha a CPython jelkezelő-ellenőrző mechanizmusát meghívják. Ez a beállítás lehetővé teszi a rendszeres szemétgyűjtést a futásidőn kívüli, C-mellékletekre irányuló hosszan tartó hívások során.

A Python 3.12 bemutatása

A Python 3.12 izgalmas funkciók és fejlesztések sorát vezeti be, forradalmasítva ezzel a kódolási élményt. Továbbfejlesztett hibaüzenetekkel, továbbfejlesztett gépelési képességekkel, a Linux Perf Profiler támogatásával és optimalizált szemétgyűjtés, a Python 3.12 olyan eszközökkel látja el Önt, amelyekkel kiváló minőségű kódokat írhat hatékonyan. Éld át a Python erejét, és emeld új magasságokba kódolási készségeidet.