Python: Einstellung von zwei Variablen, die durch ein Komma in Python getrennt sind

Was ist der Unterschied in python zwischen tun:

a, b = c, max(a, b) 

und

 a = c b = max(a, b) 

Was hat die beiden Variablen Zuordnungen auf der gleichen Zeile gesetzt?

2 Solutions collect form web for “Python: Einstellung von zwei Variablen, die durch ein Komma in Python getrennt sind”

Ihre beiden Schnipsel machen verschiedene Dinge: Versuchen Sie mit a , b und c gleich 7 , 8 und 9 .

Das erste Snippet setzt die drei Variablen auf 9 , 8 und 9 . Mit anderen Worten, max(a, b) wird berechnet, bevor a dem Wert von c . Im Grunde genommen ist alles, was a, b = c, max(a, b) ist, zwei Werte auf den Stapel drückt; Die Variablen a und b werden dann diesen Werten zugeordnet, wenn sie wieder abgelegt werden.

Auf der anderen Seite setzt das Ausführen des zweiten Snippets alle drei Variablen auf 9 . Dies liegt daran, dass a auf den Wert von c bevor der Funktionsaufruf max(a, b) erfolgt.

Sie sind anders. Der zweite ist wie zu tun

 a, b = c, max(c, b) 

Weil du c vor a b = max(a, b) zuweist. Während der erste den alten Wert von a , um ihn zu berechnen.

Python ist die beste Programmiersprache der Welt.