I-Python 3.14 iletha ukufana kweqiniso, izifanekiso eziphephile, nolwazi olushelelayo

  • Izichasiselo ezivilaphayo kanye nezintambo zika-t zinikeza ukusebenza nezifanekiso ezivikelekile.
  • Otolika abancane, ukuthuthukiswa kochungechunge lwamahhala, nokukhiya okuncane kukhulisa ukufana.
  • I-Zstandard, amathuluzi amasha e-asyncio, nokulungiswa kweziphazamisi okucacile kwenza ukuphila kwansuku zonke kube lula.
  • Ukulungisa iphutha okuphephile kanye nomhumushi omusha onamakholi alula kuthuthukisa ukubonakala nesivinini.

Python 3.14

I-Python iyaqhubeka nokukhula futhi izihlanganisa njengethuluzi elibalulekile kwisayensi yedatha, i-backend, i-automation kanye nokufundisa, kanye nenguqulo 3.14 Iza igcwele izinguquko ezithinta ukusebenza, ukuhambisana kanye nolwazi lwansuku zonke.Kulo mhlahlandlela, siyakutshela, ngezibonelo nomongo, ukuthi yini engemuva kwalawo ma-akhronimi amasha namamojula ozowabona yonke indawo nokuthi kungani. Lokhu kuthuthukiswa kuthinta kokubili abaqalayo namathimba athumela ekukhiqizeni..

Ngale komsindo ojwayelekile ozungeze ukukhishwa ngakunye, lapha siqoqe izinto ezibaluleke kakhulu ezimenyezelwe ngokusemthethweni futhi zabhalwa phansi, kanye nemininingwane esebenzayo eyabiwe onjiniyela asebesebenzisa i-3.14. Kusukela ezichasiselweni ezivilaphayo kuye kotolika abancane kulabhulali ejwayelekile, okuhlanganisa i-t-strings, i-Zstandard, isilungisi sephutha esisha esiphephile, nokuthuthukiswa kwe-REPL., okubalulekile kuchazwe ngokucacile lapha.

Uhlolojikelele: Yini Eshintsha Ngempela kuPython 3.14

I-Python 3.14 ikhishwe ngo-Okthoba 7 futhi ihlanganisa ukuqaliswa, i-API, nezinguquko ezijwayelekile zelabhulali ezithinta izindawo ezimbalwa ezibalulekile. Imibhalo esemthethweni igcina amafayela endabuko ethi Yini Okusha kanye ne-Changelog akhiwe esuka ku-Misc/NEWS.d, asebenza njengemephu enemininingwane okufanele ibukwe, umugqa ngomugqa, lokho okungeziwe. Uma ufuna isithombe esikhulu: ukufana okuwusizo kakhudlwana, amandla amasha okwenza isifanekiso nokususa iphutha, ukupakishwa okuthuthukisiwe kokucindezela, kanye nenqwaba yemilayezo yamaphutha elusizo kakhulu..

Emhlabeni wangempela, lokhu kuhumusha kube izinhlelo ezinezingxabano ezincane, izinketho eziningi zokufanisa ngaphandle kokukhiya i-GIL, izimanga ezimbalwa zezichasiselo, kanye negobolondo elisebenzisanayo elisiza ngaphezu kokulivimbela. Ngaphezu kwalokho, umphakathi ngokwawo ugqamisa intuthuko engokoqobo efana nombala ku-REPL ne-PDB, ukuthuthukiswa kwe-argparse ne-unitest, kanye nezinsiza ze-stdlib ezenza imisebenzi yansuku zonke ibe lula..

Izichasiselo ezihlehlisiwe: I-PEP 649 + PEP 749

Olunye lwezinguquko ezibaluleke kakhulu ukuhlolwa kobuvila kwezichasiselo emisebenzini, amakilasi, namamojula. Manje, esikhundleni sokuthi zihlolwe lapho zichazwa, zigcinwa emisebenzini ekhethekile futhi zixazululwe lapho kudingeka. Lokhu kunciphisa izindleko zesikhathi sokuchazwa, kugwema amaphutha ngenxa yereferensi yangaphambili futhi kwenza ukusebenza ngezinhlobo ezinkulu noma ukungenisa okumba eqolo kubekezeleleke kakhulu..

Ukuze uzihlole, imojuli iyavela annotationlib, ngamafomethi amathathu ayinhloko: VALUE (ihlola amanani wesikhathi sokusebenza njengangaphambili), FORWARDREF (maka amagama angakachazwa) kanye STRING (ibuyisela izichasiselo njengombhalo). Ngokuthuthela kwelinye izwe, ibhulokhi yokuthwala kudokhumenti esemthethweni inikeza isiqondiso sokuthi ungayishintsha nini ikhodi, nakuba ezimweni eziningi akukho okuzodinga ukushintshwa..

Imininingwane ebalulekile: uma usebenzisa from __future__ import annotations, i-semantics ethile isasebenza, ngakho hlola amathuluzi akho okuthayipha. Umgomo jikelele uwukuthuthukisa ukusebenza nokusebenziseka, kuyilapho kugcinwa ithuba lokuzihlola lapho kudingeka..

Otolika abancane kumtapo wolwazi ojwayelekile: PEP 734

I-CPython ivumele otolika abaningi nge-C-API amashumi eminyaka, kodwa i-3.14 iletha kuwo wonke umuntu concurrent.interpreters. Lokhu kuvula umnyango wokuvumelana okufana nomuntu kanye nokufana kwangempela kwe-multi-core ngaphandle kokuhlala njalo kudonsa izinqubo..

Uzuzani? Amamodeli afana ne-CSP noma amamodeli omlingisi, ukuhlukaniswa ngokuzenzakalela okunekhono lokwabelana ngokusobala, kanye nokusetshenziswa okuphansi kwezisetshenziswa kunezinqubo. Ku-CPU ejulile, njengoba otolika abangu-3.12 behlukanisiwe ngokwanele ukuze basebenze ngokuhambisanayo, bavula izimo ezihlaselwe yi-GIL ngaphambilini..

Kukhona ukulinganiselwa okukhona: ukuqalisa komhumushi akukalungiswa, ukusetshenziswa kwememori kungathuthukiswa, izinketho ezimbalwa zangempela zokwabelana ngale. memoryview, kanye nezandiso eziningi ze-PyPI ngaphandle kokusekelwa okugcwele. Izindaba ezinhle ukuthi izinga selivele lihlanganisa ukwesekwa, kukhona a InterpreterPoolExecutor en concurrent.futures, futhi umphakathi uhambisa ama-chips e-Cython, pybind11, nanobind noma i-PyO3.

Izifanekiso ze-T-string: PEP 750

Izintambo zika-T ziyafika, indlela yesifanekiso ene-syntax ye-f-string kodwa ebuyisela into. Template enezingxenye ezimile ezihlukene kanye nezihumusho, hhayi a str ukugcina. Lokhu kukuvumela ukuthi ucubungule okuqukethwe ngaphambi kokukujoyina, uhlanze okokufaka komsebenzisi, futhi uhlanganise ama-DSL angasindi ngokuvikeleke kakhudlwana..

Ubhala ngesiqalo t esikhundleni se f, uyaphinda Template futhi ucubungula ucezu ngalunye noma ukufakwa ngendlela oyithandayo. Kusukela ekubalekeleni kwe-HTML kuya esakhiweni esifana ne-DOM noma izifanekiso ezamukela izichazamazwi zesichasiso, uzothola ukuguquguquka ngaphandle kokudela ukucaciswa..

I-Python 3.14 yethula isixhumi esibonakalayo esivikelekile sokulungisa iphutha kwangaphandle: I-PEP 768

I-3.14 yethula isixhumi esibonakalayo sokulungisa iphutha esingaphezu kweqanda esivumela abalungisa iphutha namaphrofayili ukuthi bangene ngokuphephile ekusebenziseni izinqubo zePython. Azisekho izindlela zokusebenza ezingaphephile: manje sekunamaphoyinti okusebenzisa aphephile okufaka ikhodi yokususa iphutha ngaphandle kokuchezuka endleleni yotolika evamile..

Ukwenza lokhu kube lula, kuyadalulwa sys.remote_exec(), ethumela ikhodi ukuthi isetshenziswe endaweni ephephile elandelayo kunqubo eqondiwe. I-PEP ichaza iphrothokholi eyisisekelo, okuhlanganisa izilawuli zokuphepha zokukhawulela ukufinyelela nokuvimbela ukuhlukumeza, okuwukhiye kumasistimu atholakala kakhulu..

Uhlobo olusha lotolika olunomsila ngo-C

Enye into entsha yobuchwepheshe ingomunye umhumushi ohlanganisa umsila phakathi kwemisebenzi emincane engu-C esebenzisa ama-opcodes, esikhundleni esikhulu. switch. Kuzinkundla ezisekelwayo nabahlanganisi (i-Clang 19+ ku-x86-64 ne-AArch64), amabhentshimakhi okuqala abonisa ukuthuthukiswa kwejometri ngo-3% kuya ku-5%..

Kuwukungena, futhi kuyanconywa ukuthi uvule i-PGO ngoba iwukusetha okuqinisekisiwe okuletha inzuzo. Inikwe amandla ngenketho yokuhlanganisa --with-tail-call-interp, futhi i-GCC kulindeleke ukuthi iyisekele esikhathini esizayo.

Imodi enentambo yamahhala: I-PEP 703 nokusebenza okungokoqobo

Imodi ye-GIL-free, eyethulwe ngo-3.13, yenza ukugxumela phambili ngo-3.14: izinguquko ze-C-API ezihlongozwe yi-PEP 703 ziyaqedwa, futhi ama-workaround athathelwa indawo yizixazululo ezihlala njalo. Utolika oyisipesheli oguquguqukayo (PEP 659) manje useyasebenza kule modi, okuthi kanye nokunye ukulungiselelwa kunciphisa inhlawulo..

Namuhla, ukulahlekelwa ku-single-threading cishe ku-5-10% kuye ngokuthi isiteji kanye nomhlanganisi, intengo enengqondo uma kuqhathaniswa nenzuzo yokufana kwangempela. Ku-Windows, lapho uhlanganisa izandiso zesakhiwo esinentambo yamahhala kufanele uchaze Py_GIL_DISABLED, futhi ngesikhathi sokusebenza ungabheka isilungiselelo nge sysconfig.get_config_var().

Ngaphezu kwalokho, ifulege liyavela -X context_aware_warnings ukulawula izihlungi eziyisixwayiso ngomongo, okunikwe amandla ngokuzenzakalela ekwakhiweni ngaphandle kwe-GIL futhi kukhutshazwe kulezo ezisigcinayo. Kubuye kufike thread_inherit_context ukuze izintambo ezidaliwe zizuze ifa le Context() ye-invoker, ithinta izihlungi ze warnings, decimal kanye namanye ama-API ane-contextvars.

Imilayezo yephutha ewusizo kakhulu kuPython 3.14

Umhumushi manje uphakamisa amagama angukhiye lapho ethola igama elifana negama elingukhiye lePython, likusiza ukubamba ngokushesha ama-typos. Izimo ezinjengokubhala okuthi "pritn" esikhundleni sokuthi "phrinta" sezivele zilungisiwe ngamasu aqondile, nakuba kungezona zonke izinhlobo ezizohlanganiswa..

Kunemiyalezo ethize ye elif ngemva a else, futhi ezimisweni ezinemibandela ikhombisa lapho okungekho khona expression uma ubeka umusho ngemuva else o pass/break/continue ngaphambili if. Amaphutha adalwa iyunithi yezinhlamvu evalwe ngokungalungile neziqalo ezingahambelani kuyunithi yezinhlamvu nazo ziyahlungwa..

Ukuthuthukiswa okwengeziwe: imilayezo ecacile uma usebenzisa as ngezinhloso ezingahambisani ekuthengisweni kwamanye amazwe, ngaphandle kokufanisa iphethini; imininingwane lapho uzama ukufaka into engasheshi dict o set; kanye nezaziso uma ufaka isiphathi somongo esivumelanayo async with noma ngokuphambene nalokho. Konke kuyahlanganisa ukuze umhumushi akwazi ukukutshela ukuthi yini, kuphi nokuthi kungani.

Ukucindezelwa kwesimanje ku-stdlib: I-PEP 784 ne-Zstandard

Iphakheji liyazalwa compression, ethumela kabusha lzma, bz2, gzip y zlib njengoba compression.lzma, compression.bz2, compression.gzip y compression.zlib. Lawa magama amasha ayindlela ekhethwayo kusukela ngo-3.14, nakuba imizila yakudala inganciphisi okwamanje..

Inkanyezi compression.zstd, usekelo lwendabuko lwe-Zstandard olunokubophezela kulabhulali ye-zstd ye-Meta. Uzuza ama-API asheshayo nasebenza kahle, nokusekelwa okuqondile kwamafayela e-Zstandard ku tarfile, zipfile y shutil, ngaphandle kokufaka amaphakheji angaphandle.

I-Asyncio introspection kusukela kulayini womyalo

Manje usungahlola izinqubo zePython ezisebenzayo ngemisebenzi e-asynchronous usebenzisa python -m asyncio ps PID y python -m asyncio pstree PID. I-ps subcommand ibonisa ithebula eliyisicaba lemisebenzi, amagama, nezitaki; pstree ikhiqiza isihlahla socingo se-async..

Lokhu kuwusizo ikakhulukazi ezinhlelweni ezinde noma ezivinjiwe, ukuthola ukuthi ibhodlela ikuphi, yimiphi imisebenzi elindile, nokuthi ama-coroutine ahlobana kanjani. Uma kukhona imijikelezo kugrafu yokulinda, ithuluzi liyawathola futhi liklelise imizila eyinkinga..

Ukulawulwa Kwesexwayiso Okufanayo ku-Python 3.14

warnings.catch_warnings Ungasebenzisa okuguquguqukayo kokuqukethwe kuzihlungi zesexwayiso uma unika ifulegi amandla context_aware_warnings nge -X noma ukuguquguquka kwemvelo. Ngale ndlela, ukuphatha isixwayiso kuyabikezelwa uma uhlanganisa imicu noma imisebenzi engavumelaniyo futhi ayigqagqani..

Isipiliyoni somsebenzisi sePython 3.14: Ikhonsoli, i-Argparse, i-UnitTest, nokuningi

Noma ubani osebenzise i-3.14 njengokukhululwa okukhulu izinyanga ezimbalwa ugqamisa umbala kokuhlangenwe nakho kwansuku zonke: ukugqanyiswa kwe-syntax ku-REPL naku-PDB, ngezibonelo ze Ukusekelwa kwePython 3 ku-Kodi, usizo olungcono ku-argparse nemilayezo yobungane ku-unitest. Le mininingwane inciphisa ukungqubuzana futhi ikusindise ekugxumeni kusihleli ukuze uqonde ukuthi yini engalungile..

I-console esebenzayo iphakamisa ukulungiswa kwama-typos avamile, isibonelo leyo "pritn" yakudala manje ekuholela ekutheni print. Kukhona nokuqedela ngokuzenzakalela kokungenisa okuhlakaniphile, okukusiza ukuthi uthole amamojula ngaphandle kokushiya ukwaziswa..

Izinsiza ezisebenzayo kakhulu zivela ku-stdlib: kopisha futhi uhambise izindlela ku pathlib lokho kugwema ukudonsa shutil okwezisekelo, a date.strptime aqonde ngaphandle kokuthi adlule datetime.strptime().date(), kanye ne-UUID v7, ehlanganisa ukungahleliwe nokuhleleka kwesikhashana. Izinqamuleli ezincane, umthelela omkhulu emibhalweni yangaphakathi namathuluzi.

i-argparse yengeza iziphakamiso uma wenza iphutha ku-a ukukhetha, ukunciphisa isikhathi sokulungisa iphutha se-CLI; futhi yebo, ama-t-strings aseqala ukuphakela i-ecosystem encane yemitapo yolwazi ewasebenzisela izifanekiso ezivikelekile. Uma usebenza ngezintambo eziyinkimbinkimbi noma okokufaka komsebenzisi, uzowubona umehluko..

Ukufana, ukuvinjwa okuncane futhi akusekho okumangazayo ngezinqubo

Izinguquko ezimbalwa zihlose ukunciphisa ukuvimba phakathi kochungechunge: ngotolika abancane ku-stdlib kanye nokuthuthukiswa kwemodi ye-GIL-free, kunezinketho eziningi zokusabalalisa umthwalo ngaphandle kokungena kuma-deadlocks. Ngamasevisi namalabhulali anemisebenzi efanayo, lokhu kuhumushela ekuthuthukisweni kokusebenza okubambekayo..

Iphinde iguqule ukuziphatha okuzenzakalelayo lapho udala izinqubo eziningi: ithanda i-forkserver phambi ifom kalula, okunciphisa ukuphahlazeka okucashile futhi kwenza ukwehluleka kuqondakala kangcono kuzimo zokucubungula okuningi. Ngokwezinto ezibonakalayo: ama-zombies ambalwa okunzima ukuwakhiqiza kanye nokuxilongwa okuhlanzekile.

I-Python 3.14 Uhlelo Lokukhishwa Nokuvuthwa

Ithimba lePython limemezele ukukhishwa kwe-alpha okuningana phakathi nomjikelezo we-3.14, okuhlanganisa i-Alpha 5, enanini le-pre-beta eyisikhombisa ekhishwe, eklanyelwe ukuhlola izici ezintsha, ukulungisa iziphazamisi, nokushuna kahle inqubo yokukhishwa. Isigaba se-beta saqala ngoMeyi 6, 2025, kungekho zici ezintsha ezizayo, okungenzeka kube nokulungiswa kuze kube ikhandidethi lokukhululwa ngoJulayi 22..

Njengokuvamile ngezikhathi zokukhishwa ezizinzile, ukusebenzisa ukukhishwa kwangaphambilini ezindaweni zokukhiqiza akunconyiwe. Imibhalo esemthethweni igcina ikhalenda elibukhoma (PEP 745), isilandeleli senkinga ku-GitHub, nemihlahlandlela yokunikela ngePython Software Foundation. Uma uthola isiphazamisi, idokhumenti ekhiqizwe yi-Sphinx nezixhumanisi zokubika zenza kube lula ukusivula nokusilandelela..

Ukucwayiza kwezinombolo: 3.14 kanye Nonyaka Wenyoka

Ukuqondana phakathi kwenombolo yenguqulo nokulinganiselwa komlando kwe-pi (3.14) kubangele ihlaya elingaphezu kwelilodwa emphakathini, khona kanye onyakeni wenyanga omakwe Inyoka. Kusukela ku-Liu Xin kuya ku-Zu Chongzhi, ukuthatheka nge-pi cishe sekukudala njengokuthuthukisa iterators..

Ngale kwe-anecdote, le nguqulo iphinde ihloniphe imizamo ehlangene yamakhulu amavolontiya nezinkampani ezihlinzeka ngezinsizakalo zobunjiniyela. I-PSF, njengenhlangano engenzi nzuzo, ikumema ukuthi ubambe iqhaza, unikele, futhi ubuyekeze umlando namalayisense ahlanganisa imibhalo nezibonelo..

Amadokhumenti aqhubekile nokubuyekezwa kuze kube muva nje, ngamanothi okukhululwa kanye nokwakhiwa kabusha okuzenzakalelayo kusetshenziswa i-Sphinx. Uma uhlangabezana nokuziphatha okungalindelekile, hlola i- changelog kanye nokuthi Yini Okusha ukuze ubone ukuthi akhona yini ama-nuances akamuva achaza ushintsho..

Sekukonke, i-Python 3.14 ilungisa okuhlangenwe nakho kwansuku zonke kuyilapho ibeka isisekelo sesikhathi esizayo: ukufana kweqiniso okunokungqubuzana okuncane, izifanekiso eziphephile nezicacile, ukulungisa amaphutha okungenamthungo, namathuluzi achaza kangcono amaphutha. Uma uvela ku-3.13, uzoqaphela izinguquko ezikhulayo nezici ezintsha; uma ungazange ubuyekeze izinguqulo ezimbalwa, ukuthuthukiswa okuhlanganisiwe kuzokwenza ukugxuma kube okufanelekile..

I-Kodi 22 Piers
I-athikili ehlobene:
I-Kodi 22 Piers: Yini Okusha, Landa, nokuthi Yini Ongayilindela ku-Alpha