Kommas zur Optimierung von Python-Variablen
Sep 09 2020
Ich hatte eine Frage, wie Python-Code formatiert werden kann.
(q, a), b = divmod(b, a), a
y0, y1 = y1, y0 - q * y1
Wie funktionieren die Kommas zur Demonstration von Variablen für etwas wie oben? Kann jemand zeigen, wie dieser Code ohne die Verwendung von Kommas zwischen y0 und y1 oder (q, a) aussehen würde? Ich weiß, dass es eine Möglichkeit sein muss, den Code zu optimieren.
Antworten
1 YannickFunk Sep 09 2020 at 21:29
Kommas bei Zuweisungen werden für die Tupelerstellung auf der rechten Seite und das Auspacken auf der linken Seite verwendet , z.
x, y = 1, 3
Welches ist funktional äquivalent zu
x = 1
y = 3
Oder zum Beispiel das Auspacken von Listen , z.
example_list = [1, 4, 5]
x, y, z = example_list
Welches ist funktional äquivalent zu:
x = example_list[0]
y = example_list[1]
z = example_list[2]
Ihr Code ohne "Kommas" wäre also:
(q, a) = divmod(b, a) # unpacking
b = a
old_y0 = y0
y0 = y1
y1 = old_y0 - q * y1
Der Grund dafür ist meistens convenienceund nicht die Optimierung des Codes.