A sékrési perpustakaan Python pikeun komputasi ilmiah NumPy 2.0.0 sadia, fokus kana gawé bareng arrays multidimensional na matrices, sarta nyadiakeun ogé koleksi badag fungsi jeung palaksanaan rupa-rupa algoritma patali pamakéan matrices. NumPy mangrupikeun salah sahiji perpustakaan anu pang populerna anu dianggo pikeun itungan ilmiah. Kodeu proyék ieu ditulis dina Python ngagunakeun optimizations dina C sarta disebarkeun dina lisénsi BSD.
NumPy 2.0.0 nandaan release signifikan munggaran saprak 2006.
Dina versi anyar, sajaba fitur anyar jeung optimizations kinerja, parobahan geus dijieun pikeun ABI, Python API jeung C-API, nu ngalanggar kasaluyuan mundur. Contona, perpustakaan SciPy disusun kalawan NumPy 1.x bakal merlukeun recompilation pikeun digawe sareng NumPy 2.0. Dina sababaraha kasus, parobahan kode bisa jadi diperlukeun pikeun ngagunakeun NumPy 2.0 dina aplikasi.
Наиболее крупное нарушение связано с сохранением точности скалярных выражений, например, «np.float32(3) + 3» теперь вернёт значение с типом float32, а не float64, а в выражениях с несколькими типами для результата будет использован тип с наивысшей точностью, т.е. «np.array([3], dtype=np.float32) + np.float64(3)» вернёт значение с типом float64. Изменены целочисленные типы, применяемые по умолчанию на платфoрме Windows — на 64-разрядных системах теперь применяется 64-разрядный целый тип, а на 32-разрядных — 32-разрядный (ранее использовался аналог Си-типа long, а теперь эквивалент np.intp).
Sababaraha definisi dina C-API geus diganti atawa dihapus, contona, struktur PyArray_Descr geus robah. Jumlah maksimum dimensi na argumen diatur ngaliwatan NPY_MAXDIMS na NPY_MAXARGS macros geus ngaronjat nepi ka 64. Sadaya tipe kompléks geus switched pikeun ngagunakeun tipe baku tina spésifikasi C99 (cfloat_t, cdouble_t, clongdouble_t). Ditambahkeun C API anyar pikeun nyieun dtypes custom. PyArray_ImportNumPyAPI sareng PyUFunc_ImportUFuncAPI parantos diusulkeun.
Python API nyadiakeun separation leuwih eksplisit antara API umum jeung swasta sarta ngawanohkeun struktur modul anyar. Sakitar 100 pungsi, modul, sareng konstanta parantos dikaluarkeun tina rohangan ngaran "np" utama, dicabut atanapi dihapus.
Ngabersihan rohangan ngaran np.lib. Jumlah objék dina namespace utama geus ngurangan ku 10%, sarta dina namespace numpy.lib ku 80%. Numpy.core namespace geus dipindahkeun ka swasta. Dipiceun sababaraha métode ti np.ndarray na np.generic kelas. Dijieun namespace numpy.stringsf anyar kalawan operasi string.
fitur anyar kaasup rojongan pikeun float32 sarta jenis longdouble dina sakabéh fungsi numpy.fft, rojongan pikeun API Array baku dina namespace utama, a namespace anyar jeung jenis pikeun string panjang variabel. Optimasi kinerja geus dilumangsungkeun maké Intel x86-simd-sort jeung perpustakaan Google Jalan Raya pikeun fungsi string nurun, argsort, partisi jeung argpartition, operasi kalawan string dibereskeun dina modul numpy.char geus gancangan. API anyar ditambahkeun
opt_func_info pikeun ngalacak sareng introspeksi.
sumber: opennet.ru
