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