Ngemva konyaka nengxenye yentuthuko
Phakathi kwengeziwe
-
ukweseka imisebenzi yezabelo ngaphakathi kwezinkulumo eziyinkimbinkimbi. Ngo-opharetha omusha we-“:=”, kuyenzeka wenze imisebenzi yokunikeza inani ngaphakathi kwezinye izinkulumo, isibonelo, ukugwema izingcingo ezisebenza kabili ezitatimendeni ezinemibandela nalapho uchaza amaluphu:uma (n := len(a)) > 10:
...ngenkathi (block := f.read(256)) != ":
... -
ukweseka i-syntax entsha yokucacisa ama-agumenti omsebenzi. Lapho ubala ama-agumenti phakathi nencazelo yomsebenzi, ungakwazi manje ukucacisa u-"/" ukuze uhlukanise ama-agumenti angabiwa kuphela amanani ngokusekelwe ohlelweni lapho amanani abalwa khona phakathi nocingo lomsebenzi, kusukela kuma-agumenti angabelwa. nganoma iluphi uhlelo (i-variable=value syntax) ). Ngasohlangothini olusebenzayo, isici esisha sivumela imisebenzi e-Python ukuthi ilingise ngokuphelele ukuziphatha kwemisebenzi ekhona ku-C, futhi futhi igweme ukubophezela kumagama athile, isibonelo, uma igama lepharamitha lihlelelwe ukushintshwa esikhathini esizayo.Ifulegi elithi “/” lihambisana nefulegi elithi “*” engezwe ngaphambilini, okuhlukanisayo okuhlukanisayo okusebenza kuphela umsebenzi ozokwenziwa osesimweni esithi “variable=value”. Ngokwesibonelo, kumsebenzi othi "def f(a, b, /, c, d, *, e, f):" okuguquguqukayo "a" kanye "b" kunganikezwa kuphela ngokulandelana amanani asohlwini. ,
okuguquguqukayo “e” kanye “no-“f”, kuphela ngesabelo esithi “variable=value”, neziguquguqukayo “c” kanye “d” nganoma iyiphi kulezi zindlela ezilandelayo:f(10, 20, 30, 40, e=50, f=60)
f(10, 20, s=30, d=40, e=50, f=60) -
Kwengezwe entsha C API
ukuze ulungiselele amapharamitha wokuqalisa wePython, okuvumela ukulawula okuphelele kukho konkeukumisa kanye nokuhlinzeka ngezinsiza ezithuthukile zokusingatha amaphutha. I-API ehlongozwayo yenza kube lula ukushumeka ukusebenza komtoliki we-Python kwezinye izinhlelo zokusebenza ze-C; -
Kwenziwa Iphrothokholi entsha ye-Vectorcall yokufinyelela ngokushesha ezintweni ezibhalwe ngolimi C. Ku-CPython 3.8, ukufinyelela ku-Vectorcall kusakhawulelwe ekusetshenzisweni kwangaphakathi, ukudlulisela esigabeni sama-API afinyeleleka esidlangalaleni kuhlelwa ku-CPython 3.9; -
Kwengeziwe izingcingo ku-Runtime Audit Hooks, ehlinzeka ngezinhlelo zokusebenza nezinhlaka ku-Python ngokufinyelela olwazini olusezingeni eliphansi mayelana nenqubekelaphambili yeskripthi ukuhlola izenzo ezenziwe (isibonelo, ungakwazi ukulandelela ukungenisa kwamamojula, ukuvula amafayela, usebenzisa umkhondo, ukufinyelela amasokhethi enethiwekhi, ukusebenzisa ikhodi ngokusebenzisa exec, eval kanye run_mod); - Kumojula
ukhukhamba enikeziwe ukusekelwa kwephrothokholi ye-Pickle 5, esetshenziselwa ukwenza ama-serializing kanye nokususa izinto. I-Pickle ikuvumela ukuthi uthuthukise ukudluliswa kwenani elikhulu ledatha phakathi kwezinqubo ze-Python ekucushweni kwe-multi-core kanye ne-multi-node ngokunciphisa inani lemisebenzi yokukopisha inkumbulo nokusebenzisa amasu okuthuthukisa engeziwe njengokusebenzisa ama-algorithms wokucindezela idatha ethile. Inguqulo yesihlanu yephrothokholi iyaphawuleka ngokungezwa kwemodi yokudlulisela ngaphandle kwebhendi, lapho idatha ingadluliselwa ngokuhlukana nomfudlana we-pickle oyinhloko. - Ngokuzenzakalelayo, inguqulo yesine yephrothokholi ye-Pickle icushiwe, okuthi, uma kuqhathaniswa nenguqulo yesithathu eyanikezwa ngaphambilini ngokuzenzakalelayo, ivumela ukusebenza okuphezulu nokunciphisa usayizi wedatha edlulisiwe;
- Kumojula
ukuthayipha Ziningana izici ezintsha ezethulwayo:- Класс
I-TypeDict kumalungu afanayo ahlangene lapho ulwazi lohlobo lucaciswa ngokusobala kudatha ehlobene nokhiye (“TypedDict('Point2D', x=int, y=int, ilebula=str)"). - Thayipha
Ongokoqobo , okukuvumela ukuthi ukhawulele ipharamitha noma ubuyisele inani kumanani achazwe ngaphambilini ambalwa (“Literal['ixhunyiwe', 'inqanyuliwe']"). - Idizayini "
Final ", okwenza kube nokwenzeka ukuchaza amanani okuguquguqukayo, imisebenzi, izindlela namakilasi angenakushintshwa noma anikezwe kabusha ("pi: Final[float] = 3.1415926536").
- Класс
- Kwengezwe ikhono lokunikeza inqolobane yamafayela ahlanganisiwe nge-bytecode, alondolozwe esihlahleni se-FS esihlukile futhi ahlukaniswe nezinkomba ezinekhodi. Indlela yokulondoloza amafayela nge-bytecode isethwe ngokuguquguquka
I-PYTHONPYCACHEPREFIX noma inketho "-X pycache_prefix"; -
Kwenziwa ikhono lokudala ukwakhiwa kwe-debug ye-Python esebenzisa i-ABI efana nokukhululwa, ekuvumela ukuthi ulayishe izandiso ezibhalwe ngolimi lwe-SI, ezihlanganiswe ukukhishwa okuzinzile, ekwakhiweni kokususa iphutha; - ama-f-strings (amagama afomathiweyo anesiqalo esithi 'f') ahlinzeka ngosekelo ku-opharetha = (ngokwesibonelo, "f'{expr=}'"), okukuvumela ukuthi uguqule isisho sibe umbhalo ukuze kulungiswe iphutha kalula. Ngokwesibonelo:
››› umsebenzisi = 'eric_idle'
››› ilungu_kusukela = usuku(1975, 7, 31)
››› f'{user=} {member_since=}'
"user='eric_idle' member_since=datetime.date(1975, 7, 31)" - Inkulumo "
qhubeka »kuvunyelwe ukusetshenziswa ngaphakathi kwebhulokhiekugcineni ; - Kwengezwe imojuli entsha
multiprocessing.shared_memory , okuvumela ukusetshenziswa kwezingxenye zememori eyabiwe ekucushweni kwezinqubo eziningi; - Ku-Windows platform, ukuqaliswa kwe-asyncio kususiwe ukuze kusetshenziswe ikilasi
I-ProactorEventLoop ; - Ukusebenza komyalelo we-LOAD_GLOBAL kukhuphuke cishe ngo-40% ngenxa yokusetshenziswa kwendlela entsha yokugcina inqolobane yekhodi yento.
Source: opennet.ru