Lëshimi i bibliotekës Python për llogaritjet shkencore NumPy 2.0.0

Lansohet versioni 2.0.0 i bibliotekës Python për llogaritje shkencore NumPy, e cila është e orientuar drejt punës me masiva shumëdimensionale dhe matrica, si dhe ofron një koleksion të gjerë funksionesh me implementimin e algoritmeve të ndryshëm të lidhura me përdorimin e matricave. NumPy është një nga bibliotekat më të kërkuara që përdoren për llogaritjet shkencore. Kodi i projektit është shkruar në gjuhën Python me optimizime të realizuara në gjuhën C dhe shpërndahet nën licencën BSD.

NumPy 2.0.0 shihet si lëshimi i parë i rëndësishëm që nga viti 2006.
Në versionin e ri, përveç mundësive të reja dhe optimizimit të performancës, janë bërë ndryshime në ABI, Python API dhe C-API, të cilat shkelin përputhshmërinë e prapme. Për shembull, biblioteka SciPy e ndërtuar me NumPy 1.x për t'u punuar me NumPy 2.0 do të kërkojë ribërje. Në raste të veçanta, për të përdorur NumPy 2.0 në aplikacione mund të nevojiten ndryshime në kod.

Shkelja më e madhe lidhet me ruajtjen e saktësisë së shprehjeve skalar, për shembull, "np.float32(3) + 3" tani do të kthejë një vlerë me tipin float32, e jo float64, ndërsa në shprehjet me lloje të ndryshme, do të përdoret tipi me saktësinë më të lartë, dmth, "np.array([3], dtype=np.float32) + np.float64(3)" do të kthejë një vlerë me tipin float64. Janë ndryshuar tipet e numrave të plotë që përdoren si parazgjedhje në platformën Windows - në sistemet 64-bit tani përdoret tipi 64-bit i plotë, ndërsa në sistemet 32-bit përdoret tipi 32-bit (më parë ishte një ekuivalent i tipit C 'long' dhe tani është ekuivalenti np.intp).

Disa definicione nĂ« C-API janĂ« zĂ«vendĂ«suar ose fshirĂ«, pĂ«r shembull, struktura PyArray_Descr Ă«shtĂ« ndryshuar. Numri maksimal i dimensioneve dhe argumenteve qĂ« vendosen pĂ«rmes makros NPY_MAXDIMS dhe NPY_MAXARGS Ă«shtĂ« rritur nĂ« 64. TĂ« gjithĂ« tipet komplekse janĂ« transferuar pĂ«r tĂ« pĂ«rdorur tipet standarde nga spesifikimi C99 (cfloat_t, cdouble_t, clongdouble_t). ËshtĂ« shtuar njĂ« API i ri C pĂ«r krijimin e dtype-ve tĂ« vetĂ«. Jane propozuar funksione tĂ« reja tĂ« thjeshtuara si PyArray_ImportNumPyAPI dhe PyUFunc_ImportUFuncAPI.

Në Python API është siguruar një ndarje më e qartë midis API-ve publike dhe private, është propozuar një strukturë e re modulash. Rreth 100 funksione, module dhe constante janë nxjerrë nga hapësira kryesore e emrave "np", janë shpallur të vjetra ose të fshira.
Emri i hapĂ«sirĂ«s sĂ« emrave np.lib Ă«shtĂ« pastruar. Numri i objekteve nĂ« hapĂ«sirĂ«n kryesore tĂ« emrave Ă«shtĂ« reduktuar me 10%, ndĂ«rsa nĂ« hapĂ«sirĂ«n e emrave numpy.lib me 80%. ËshtĂ« transferuar nĂ« klasĂ«n private tĂ« hapĂ«sirĂ«s sĂ« emrave numpy.core. Disa metoda janĂ« fshirĂ« nga klasat np.ndarray dhe np.generic. ËshtĂ« krijuar njĂ« hapĂ«sirĂ« e re emrash numpy.stringsf me operacione string.

Mes veçorive tĂ« reja mund tĂ« pĂ«rmendim mbĂ«shtetje pĂ«r tipet float32 dhe longdouble nĂ« tĂ« gjitha funksionet numpy.fft, mbĂ«shtetje pĂ«r API-nĂ« standarde Array nĂ« hapĂ«sirĂ«n kryesore tĂ« emrave, njĂ« hapĂ«sirĂ« e re emrash dhe tipet pĂ«r vargje me gjatĂ«si tĂ« ndryshme. ËshtĂ« optimizuar performanca duke pĂ«rdorur bibliotekat Intel x86-simd-sort dhe Google Highway pĂ«r funksionet e string-eve sort, argsort, partition dhe argpartition, dhe janĂ« pĂ«rshpejtuar operacionet me string-un e fikshĂ«m nĂ« modulin numpy.char. ËshtĂ« shtuar njĂ« API i ri
opt_func_info për trasimin dhe inspektimin.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster