Kurs
Arrays sind grundlegende Datenstrukturen in vielen Programmiersprachen und bieten eine Möglichkeit, Sammlungen von Elementen desselben Typs in einem zusammenhängenden Speicherblock zu speichern – das heißt, alle Elemente werden ohne Lücken nacheinander gespeichert. Diese Struktur macht es einfach, auf die gespeicherten Elemente zuzugreifen und sie zu bearbeiten.
Anders als Sprachen wie C oder Java hat Python keinen eingebauten Array-Datentyp im herkömmlichen Sinne. Stattdessen bietet Python mehrere Alternativen, die wie Arrays funktionieren und jeweils für unterschiedliche Programmieranforderungen und Szenarien geeignet sind.
Die Standardbibliothek von Python hat ein Array-Modul , mit dem man kompakte, typbeschränkte Arrays erstellen kann, ähnlich wie in Sprachen mit stärkerer Typisierung.
Für numerische und wissenschaftliche Berechnungen ist jedoch die NumPy und ihr ndarray (n-dimensionales Array) der Standard in Python geworden. NumPy-Arrays bieten echt viele Funktionen, die weit über die einfache Array-Struktur der Standardbibliothek von Python hinausgehen.
KI-Upskilling für Einsteiger
Grundlagen eines Arrays
NumPy ist das grundlegende Paket für numerische Berechnungen in Python und bietet ein leistungsstarkes Array-Objekt sowie eine Reihe von Funktionen für die effiziente Arbeit mit diesen Arrays. Die Vorteile von Numpy sind:
• Mehrdimensional: Unterstützt mehr als nur eindimensionale Arrays.
• Leistungsstarke Funktionen: Enthält eine riesige Bibliothek mit mathematischen und statistischen Funktionen.
• Vektorisierung: Ermöglicht Operationen auf ganzen Arrays, ohne dass man explizite Schleifen braucht, was die Leistung verbessert.
• Integration: Funktioniert super mit anderen wissenschaftlichen Bibliotheken wie SciPy, Pandas und Matplotlib.
Fangen wir an, mit Numpy ein Array zu erstellen. Zuerst importierst du NumPy und dann machst du mit der Funktion array() ein Array. Die Funktion array() braucht eine Liste als Eingabe.
import numpy
my_array = numpy.array([0, 1, 2, 3, 4])
print(my_array)
# Expected output: [0 1 2 3 4]
Der Typ my_array ist ein numpy.ndarray.
import numpy
my_array = numpy.array([0, 1, 2, 3, 4])
print(type(my_array))
# Expected output: <class 'numpy.ndarray'>
Array-Beispiele
Beispiel für die Erstellung eines Arrays
Im folgenden Beispiel machst du aus einer Liste ein Array mit der Funktion array() von NumPy. Du erstellst eine Liste namens a_list, die aus ganzen Zahlen besteht. Dann machst du mit der Funktion array() ein Array daraus.
import numpy as np
a_list = [1, 2, 3, 4]
print(a_list)
# Expected output: [1, 2, 3, 4]
import numpy as np
a_list = [1, 2, 3, 4]
an_array = np.array(a_list)
print(an_array)
# Expected output: [1 2 3 4]
Beispiel für eine Array-Operation
Im folgenden Beispiel addierst du zwei Numpy-Arrays. Das Ergebnis ist eine elementweise Summe beider Arrays.
import numpy as np
array_A = np.array([1, 2, 3])
array_B = np.array([4, 5, 6])
print(array_A + array_B)
# Expected output: [5 7 9]
Beispiel für Array-Indizierung
Du kannst ein bestimmtes Indexelement eines Arrays mit der Indexnotation auswählen.
import numpy as np
months_array = np.array(['Jan', 'Feb', 'March', 'Apr', 'May'])
print(months_array[3])
# Expected output: Apr
Du kannst auch mehrere Elemente mit der Slicing-Notation ausschneiden, indem du einen Bereich von Indizes angibst.
import numpy as np
months_array = np.array(['Jan', 'Feb', 'March', 'Apr', 'May'])
print(months_array[2:5])
# Expected output: ['March', 'Apr', 'May']
Interaktives Beispiel für eine Liste in einem Array
Im folgenden Beispiel importierst du numpy mit dem Alias np. Mach die Arrays prices_array und earnings_array aus den Listen prices und earnings. Schlussendlich druckt ihr beide Arrays aus.
import numpy as np
# Lists
prices = [170.12, 93.29, 55.28, 145.30, 171.81, 59.50, 100.50]
earnings = [9.2, 5.31, 2.41, 5.91, 15.42, 2.51, 6.79]
# NumPy arrays
prices_array = np.array(prices)
earnings_array = np.array(earnings)
# Print the arrays
print(prices_array)
print(earnings_array)
# Expected output:
# [170.12 93.29 55.28 145.3 171.81 59.5 100.5 ]
# [ 9.2 5.31 2.41 5.91 15.42 2.51 6.79]
Mehr über NumPy-Arrays in Python erfährst du in diesem Video aus unserem Kurs Einführung in Python für Finanzen.
Dieser Inhalt ist aus dem Kurs Einführung in Python für Finanzen von Adina Howe bei DataCamp.
Schau dir unser Python-Numpy-Array-Tutorial an.
Häufig gestellte Fragen
Was sind die Hauptunterschiede zwischen dem Array-Modul von Python und NumPy-Arrays?
Die Hauptunterschiede sind die Funktionen und Anwendungsfälle. Das Array-Modul von Python bietet grundlegende Funktionen zum Erstellen kompakter, typbeschränkter Arrays, ähnlich wie in Sprachen wie C. NumPy-Arrays hingegen bieten erweiterte Funktionen wie Unterstützung für mehrdimensionale Arrays, eine umfangreiche Bibliothek mit mathematischen Funktionen und Leistungsoptimierungen durch Vektorisierung. NumPy ist meistens die erste Wahl für numerische und wissenschaftliche Berechnungen.
Kann ich das Array-Modul von Python für String- oder Objektdatentypen verwenden?
Nein, das Array-Modul ist nur für einfache Datentypen wie Ganzzahlen, Gleitkommazahlen und so weiter gedacht. Es unterstützt keine Strings oder Objekte. Für solche Sammlungen sind Python-Listen oder andere Datenstrukturen wie Tupel oder Wörterbücher besser geeignet.
Warum sollte man für numerische Daten NumPy-Arrays statt Python-Listen nehmen?
NumPy-Arrays sind extra für numerische Berechnungen optimiert. Sie bieten effiziente Speicher- und Verarbeitungsfunktionen, die Python-Listen übertreffen, vor allem bei großen Datensätzen. Funktionen wie die Vektorisierung machen es möglich, ganze Arrays ohne explizite Schleifen zu bearbeiten, was die Leistung und Lesbarkeit des Codes echt verbessert.

