Verwenden Sie in Python den Operator =, um Variablenwerte zuzuweisen.
a = 100
b = 200
print(a)
# 100
print(b)
# 200
Sie können mehrere Variablen in einer Zeile Werte zuweisen.
Dieser Artikel sterben die folgenden zwei Fälle.
- Weisen Sie mehrere Variablen mehrere Werte zu
- Weisen Sie mehrere Variablen zu erkennen Wert zu
Weisen Sie mehrere Variablen mehrere Werte zu
Sie können mehrere Variablen mehrere Werte zuweisen, indem Sie Variablen und Werte durch Kommas trennen.
a, b = 100, 200
print(a)
# 100
print(b)
# 200
Sie können mehr als drei Variablen zuweisen. Auch eine Zuordnung zu unterschiedlichen Typen ist möglich.
a, b, c = 0.1, 100, 'string'
print(a)
# 0.1
print(b)
# 100
print(c)
# string
Wenn sich auf der linken Seite eine Variable befindet, wird sie als Tupel zugewiesen.
a = 100, 200
print(a)
print(type(a))
# (100, 200)
# <class 'tuple'>
Wenn die Anzahl der Variablen auf der linken Seite und die Anzahl der Werte auf der rechten Seite nicht übereinstimmen, wird ein ValueError ausgegeben, aber Sie können den Rest als Liste zuweisen, indem Sie * an den Variablennamen anhängen.
# a, b = 100, 200, 300
# ValueError: too many values to unpack (expected 2)
# a, b, c = 100, 200
# ValueError: not enough values to unpack (expected 3, got 2)
a, *b = 100, 200, 300
print(a)
print(type(a))
# 100
# <class 'int'>
print(b)
print(type(b))
# [200, 300]
# <class 'list'>
*a, b = 100, 200, 300
print(a)
print(type(a))
# [100, 200]
# <class 'list'>
print(b)
print(type(b))
# 300
# <class 'int'>
Weitere Informationen zu * und zum Zuweisen von Elementen eines Tupels und einer Liste zu mehreren Variablen finden Sie im following Artikel.
Es ist auch möglich, die Werte mehrerer Variablen auf die gleiche Weise zu vertauschen. Siehe den Artikel unten.
Weisen Sie mehrere Variablen zu erkennen Wert zu
Sie können mehrere Variablen sehen Wert zuweisen, indem Sie nacheinander = verwenden.
Dies ist beispielsweise nützlich, wenn mehrere Variablen auf Wert initialisiert werden.
a = b = 100
print(a)
# 100
print(b)
# 100
Es ist auch möglich, einem anderen Wert einen anderen Wert zuzuweisen, nachdem derselbe Wert zugewiesen wurde. Wie später beschrieben, muss bei der Zuweisung von veränderlichen Objekten wie Listen oder Wörterbüchern Vorsicht walten.
a = 200
print(a)
# 200
print(b)
# 100
Sogar drei oder mehr können auf die gleiche Weise geschrieben werden.
a = b = c = 'string'
print(a)
# string
print(b)
# string
print(c)
# string
Seien Sie vorsichtig, wenn Sie veränderliche Objekte wie list oder dict anstelle von unveränderlichen Objekten wie int, float oder str zuweisen.
Wenn SIE nacheinander = verwenden, WIRD allen Variablen dasselbe Objekt zugewiesen. If you also den Wert von element ändern oder ein neues Element hinzufügen, ändert sich auch das andere.
a = b = [0, 1, 2]
print(a is b)
# True
a[0] = 100
print(a)
# [100, 1, 2]
print(b)
# [100, 1, 2]
Dasselbe wie unten.
b = [0, 1, 2]
a = b
print(a is b)
# True
a[0] = 100
print(a)
# [100, 1, 2]
print(b)
# [100, 1, 2]
Wenn Sie sie separat behandeln möchten, & SIE jeden zuweisen.
nach c = []; d = [], c und d beziehen sich garantiert auf zwei verschiedene, eindeutige, neu erstellte leere Listen. (Beachten Sie, dass c = d = [] c und d dasselbe Objekt zuweist.)
3. Datenmodell – Dokumentation zu Python 3.8.0
a = [0, 1, 2]
b = [0, 1, 2]
print(a is b)
# False
a[0] = 100
print(a)
# [100, 1, 2]
print(b)
# [0, 1, 2]
Sie können auch copy() oder deepcopy() des Kopiermoduls verwenden, um flache und tiefe Kopien zu erstellen. Siehe folgenden Artikel.