NumPy Scientific Computing Python Library 2.0.0 гарлаа

Олон хэмжээст массив, матрицтай ажиллахад чиглэгдсэн шинжлэх ухааны тооцоололд зориулсан Python номын сангийн NumPy 2.0.0 хувилбар гарсан бөгөөд матрицыг ашиглахтай холбоотой янз бүрийн алгоритмуудыг хэрэгжүүлэх олон функцүүдийн цуглуулгатай. NumPy бол шинжлэх ухааны тооцоололд ашигладаг хамгийн алдартай номын сангуудын нэг юм. Төслийн код нь Python хэл дээр C хэл дээрх оновчлолыг ашиглан бичигдсэн бөгөөд BSD лицензийн дагуу түгээгддэг.

NumPy 2.0.0 нь 2006 оноос хойш гарсан анхны чухал хувилбар юм.
Шинэ боломжууд болон гүйцэтгэлийн оновчлолоос гадна шинэ хувилбарт ABI, Python API болон C-API-д хийгдсэн өөрчлөлтүүд багтсан бөгөөд энэ нь эргээд нийцтэй байдлыг эвддэг. Жишээлбэл, NumPy 1.x-ээр эмхэтгэсэн SciPy номын сан нь NumPy 2.0-тэй ажиллахын тулд дахин эмхэтгэх шаардлагатай болно. Зарим тохиолдолд NumPy 2.0 програмыг ашиглахын тулд кодыг өөрчлөх шаардлагатай байж болно.

Хамгийн чухал алдаа нь скаляр илэрхийллийн нарийвчлалыг хадгалахтай холбоотой юм, жишээлбэл, "np.float32(3) + 3" нь одоо float64 биш, float32 төрлийн утгыг буцаах бөгөөд олон төрлийн илэрхийллүүдэд хамгийн өндөр нарийвчлалтай төрлийг үр дүнд ашиглах болно, өөрөөр хэлбэл "np.array([3], dtype=np.float32) + np.float64(3)" нь float64 төрлийн утгыг буцаана. Платформ дээр ашигласан анхдагч бүхэл тооны төрлүүдийг өөрчилсөн. Windows — 64 битийн систем дээр одоо 64 битийн бүхэл тоон төрлийг, 32 битийн систем дээр 32 битийн төрлийг ашиглаж байна (өмнө нь C төрлийн аналог long ашигладаг байсан бол одоо үүнтэй тэнцэх np.intp).

C-API дахь зарим тодорхойлолтыг сольсон эсвэл хассан, жишээлбэл, PyArray_Descr бүтцийг өөрчилсөн. NPY_MAXDIMS болон NPY_MAXARGS макрогоор тохируулсан хэмжээс болон аргументуудын дээд хэмжээг 64 болгож нэмэгдүүлсэн. Бүх нарийн төвөгтэй төрлүүдийг C99 тодорхойлолтоос (cfloat_t, cdouble_t, clongdouble_t) стандарт төрлүүдэд шилжүүлсэн. Захиалгат dtypes үүсгэх шинэ C API нэмсэн. PyArray_ImportNumPyAPI болон PyUFunc_ImportUFuncAPI хялбаршуулсан эхлүүлэх шинэ функцуудыг санал болгосон.

Python API нь нийтийн болон хувийн API-г илүү тодорхой зааглаж, шинэ модулийн бүтцийг нэвтрүүлдэг. 100 орчим функц, модуль, тогтмолуудыг үндсэн "np" нэрийн зайнаас зөөж, хуучирсан эсвэл устгасан.
np.lib нэрийн зайг цэвэрлэв. Үндсэн нэрийн талбар дахь объектын тоо 10%, numpy.lib нэрийн талбар дахь 80% -иар буурсан. numpy.core нэрийн орон зайг нууцлал руу зөөсөн. np.ndarray болон np.generic ангиас зарим аргуудыг устгасан. Мөрт үйлдэлтэй numpy.stringsf шинэ нэрийн орон зайг үүсгэсэн.

Шинэ боломжууд нь бүх numpy.fft функцууд дахь float32 болон longdouble төрлүүдийн дэмжлэг, үндсэн нэрийн талбар дахь стандарт Array API-ийн дэмжлэг, шинэ нэрийн орон зай, хувьсах урттай мөрүүдийн төрлүүд орно. Гүйцэтгэлийн оновчлолыг Intel x86-simd-sort болон Google Highway номын сангуудыг ашиглан эрэмбэлэх, argsort, хуваалт болон argpartition функцуудад зориулан гүйцэтгэсэн бөгөөд numpy.char модулийн тогтмол мөрүүдтэй ажиллах ажиллагааг хурдасгасан. Шинэ API нэмэгдсэн
opt_func_info нь мөшгих болон дотогшоо харах боломжтой.

Эх сурвалж: opennet.ru

DDoS хамгаалалт, VPS VDS сервер бүхий сайтуудад найдвартай хостинг худалдаж аваарай 🔥 DDoS хамгаалалттай, VPS VDS сервертэй найдвартай вэбсайт хостинг худалдаж аваарай | ProHoster