Imaginäre Zahlen in NumPy Arrays
-
Verwenden Sie die Klasse
numpy.complex
, um imaginäre Zahlen in NumPy-Arrays zu speichern -
Verwenden des Parameters
dtype
zum Speichern imaginärer Zahlen in NumPy-Arrays
In Python können wir sowohl mit reellen als auch mit imaginären Zahlen arbeiten.
Um eine komplexe Zahl darzustellen, fügen wir am Ende einfach j
hinzu. Die folgende Zeichenkette repräsentiert beispielsweise eine imaginäre Zahl.
a = 5 + 2j
print(a, type(a))
Ausgabe:
(5+2j) <class 'complex'>
In diesem Tutorial lernen wir, wie man mit imaginären Zahlen in NumPy-Arrays umgeht.
Wie bereits erwähnt, können wir einfach eine komplexe Zahl erstellen, indem wir j
hinzufügen. Wir können dieses Literal mit verschiedenen Funktionen wie numpy.array()
, numpy.arange()
und mehr an ein Array senden. Im folgenden Code finden Sie verschiedene Beispiele für komplexe Zahlen in NumPy-Arrays.
arr_1 = 1j * np.arange(5)
arr_2 = np.array([2 + 1j, 3 + 4j, 5 + 2j])
print(arr_1)
print(arr_2)
Ausgabe:
[0.+0.j 0.+1.j 0.+2.j 0.+3.j 0.+4.j]
[2.+1.j 3.+4.j 5.+2.j]
Verwenden Sie die Klasse numpy.complex
, um imaginäre Zahlen in NumPy-Arrays zu speichern
Eine andere Methode zum Erstellen komplexer Objekte ist die Verwendung der vom numpy-Modul bereitgestellten Klasse complex
. Dies gibt ein komplexes Objekt zurück, das wiederum in Arrays gespeichert werden kann, wie in der vorherigen Methode erläutert.
Beispielsweise,
a = np.complex(1 + 1j)
c = a * np.arange(5)
print(c)
Ausgabe:
[0.+0.j 1.+1.j 2.+2.j 3.+3.j 4.+4.j]
Verwenden des Parameters dtype
zum Speichern imaginärer Zahlen in NumPy-Arrays
Eine andere Methode zum Initiieren von imaginären Zahlen in Arrays besteht darin, den Parameter dtype
in einigen numpy-Array-Funktionen anzugeben. Wie wir wissen, können wir die Funktionen numpy.zeros()
und numpy.ones()
verwenden, um Arrays mit 0s bzw. 1s zu erstellen. Hier können wir den Parameter dtype
als komplex
angeben, um ein resultierendes Array mit komplexen Werten zu erhalten.
Der folgende Code erklärt dies.
z = np.ones(4, dtype=complex) * 2
print(z)
Ausgabe:
[2.+0.j 2.+0.j 2.+0.j 2.+0.j]
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn