numpy | |
---|---|
Sorts | Python-bibliotek [d] och matematisk programvara [d] |
Författare | Travis Oliphant [d] |
Utvecklaren | Travis Oliphant [d] |
Skrivet i | Python , C [2] och Fortran |
Operativ system | Unix-liknande operativsystem , macOS och Microsoft Windows |
Första upplagan | 1995 |
senaste versionen | 1.23.0 [1] ( 23 juni 2022 ) |
Läsbara filformat | NumPy-data [d] |
Genererade filformat | NumPy-data [d] |
Licens | modifierad BSD-licens [d] [3] |
Hemsida | numpy.org _ |
Mediafiler på Wikimedia Commons |
NumPy (förkortning av Numerical Python ) är ett bibliotek med öppen källkod för programmeringsspråket Python . Förmågor:
Matematiska algoritmer implementerade i tolkade språk (t.ex. Python) är ofta mycket långsammare än samma algoritmer implementerade i kompilerade språk (t.ex. Fortran , C , Java ). NumPy-biblioteket tillhandahåller implementeringar av beräkningsalgoritmer ( i form av funktioner och operatorer) som är optimerade för att arbeta med flerdimensionella arrayer. Som ett resultat är varje algoritm som kan uttryckas som en sekvens av operationer på arrayer (matriser) och implementeras med hjälp av NumPy lika snabb som motsvarande kod som körs i MATLAB [4] .
NumPy kan ses som ett gratis alternativ till MATLAB. MATLAB-programmeringsspråket påminner ytligt om NumPy: båda tolkas, båda låter dig utföra operationer på arrayer (matriser) och inte på skalärer . Fördelen med MATLAB är närvaron av ett stort antal paket ("verktygslådor"), till exempel Simulink . För NumPy finns det liknande "paket" också, till exempel ger SciPy -biblioteket mer MATLAB-liknande funktionalitet, Matplotlib-biblioteket låter dig skapa plotter i MATLAB-stilen. Både MATLAB och NumPy använder kod baserad på koden i LAPACK- biblioteket för att lösa grundläggande linjära algebraproblem .
Låt oss titta på ett exempel på att arbeta med NumPy i det interaktiva IPython -skalet .
Kör Python från kommandoraden:
ipython -pylabKoden:
x = linspace ( 0 , 2 * pi , 100 ) y = sin ( x ) plot ( x , y , 'ro-' ) visa ()Som ett resultat av skriptet kommer Matplotlib-biblioteket att skapa grafen som visas i figuren.
1995 skrev programmeraren Jim Hugunin det numeriska Python-biblioteket. Biblioteket har utvecklats med hjälp av många människor, inklusive Jim Fulton, David Ascher, Paul DuBois och Konrad Hinsen. Biblioteket är tillgängligt än i dag, det anses vara ganska stabilt och komplett, men föråldrat.
Numeric föreslogs läggas till Python-standardbiblioteket, men Guido Van Rossum (Pythons författare) gjorde det klart att koden i dess dåvarande tillstånd var omöjlig att underhålla.
Dessutom var det numeriska biblioteket långsamt att bearbeta stora mängder data.
Baserat på det numeriska biblioteket skapades NumArray-biblioteket. Den numeriska koden har skrivits om helt.
NumArray-biblioteket behandlade stora arrayer av data snabbare än det numeriska biblioteket, men bearbetade små arrayer långsammare.
Ett tag användes både det numeriska biblioteket och NumArray-biblioteket. Den senaste versionen av Numeric (v24.2) släpptes den 11 november 2005 . Den senaste versionen av NumArray (v1.5.2) släpptes den 24 augusti 2006 [5] . NumArray-biblioteket rekommenderas inte längre för användning [6] .
I början av 2005 ville programmeraren Travis Oliphant förena gemenskapen kring ett projekt och skapade NumPy-biblioteket för att ersätta biblioteken Numeric och NumArray. NumPy skapades från den numeriska koden. Den numeriska koden har skrivits om för att vara enklare att underhålla och nya funktioner kan läggas till i biblioteket. NumArray-funktioner har lagts till i NumPy.
NumPy var ursprungligen en del av SciPy-biblioteket. För att andra projekt ska kunna använda NumPy-biblioteket har dess kod placerats i ett separat paket.
NumPy-källkoden är allmän egendom. Det finns en stor mängd dokumentation. Det finns till och med en detaljerad " Guide till NumPy " [7] .
NumPy v1.3.0 släpptes den 5 april 2009 och stöder Python v2.6 [8] . Stöd för Python v3 har lagts till sedan version 1.5.0.
Pytonorm | |
---|---|
gemenskap | |
Genomföranden | |
Övrig |
|