NumPy
Numpy — розширення мови Python, що додає підтримку великих багатовимірних масивів і матриць, разом з великою бібліотекою високорівневих математичних функцій для операцій з цими масивами. Попередник Numpy, Numeric, був спочатку створений Jim Hugunin. Numpy — відкрите програмне забезпечення і має багато розробників.
![]() | |
![]() | |
Тип | бібліотека Pythond і математичне ПЗd |
---|---|
Автор(и) | Travis E. Oliphantd |
Розробник | Community project |
Стабільний випуск | 1.17.2 (7 вересня, 2019[1]) |
Версії | 1.22.0 (31 грудня 2021)[2][3][4] |
Репозиторій | github.com/numpy/numpy |
Операційна система | Cross-platform |
Мова програмування | Python, C |
Ліцензія | Ліцензія BSD |
Вебсайт | numpy.org |
![]() |
Мотивація
Оскільки Python — інтерпретована мова, математичні алгоритми, часто працюють в ньому набагато повільніше ніж у компільованих мовах, таких як C або навіть Java. NumPy намагається вирішити цю проблему для великої кількості обчислювальних алгоритмів забезпечуючи підтримку багатовимірних масивів і безліч функцій і операторів для роботи з ними. Таким чином будь-який алгоритм, який може бути виражений в основному як послідовність операцій над масивами і матрицями, працює так само швидко, як еквівалентний код, написаний на C.
NumPy можна розглядати як гарну вільну альтернативу MATLAB, оскільки мова програмування MATLAB зовні нагадує NumPy: обидві вони інтерпретовані, і обидві дозволяють користувачам писати швидкі програми поки більшість операцій проводяться над масивами або матрицями, а не над скалярами. Перевага MATLAB у великій кількості доступних додаткових тулбоксів, включаючи такі як пакет Simulink. Основні пакети, що доповнюють NumPy, це: SciPy — бібліотека, що додає більше MATLAB-подібної функціональності; Matplotlib — пакет для створення графіки в стилі MATLAB. Внутрішньо як MATLAB, так і NumPy базується на бібліотеці LAPACK, призначеної для вирішення основних задач лінійної алгебри.
Numpy 1.6.0[5]
- Підтримка Python 2.4 — 2.7, Python 3.1 — 3.2
- Додано підтримку 16-бітного формату чисел з рухомою комою (IEEE 754—2008)
- Додано поліноми Legendre, Laguerre, Hermite
- Додано ряд нових функцій та заміна старих.
- Доповнення у C API