Ich versuche, ein paar Knöpfe zu erstellen (mit einem für) etwa so:Tkinter Schaltfläche Befehl in Schleife zuweisen mit Lambda
def a(self, name):
print name
users = {"Test":"127.0.0.0", "Test2":"128.0.0.0"}
row = 1
for name in users:
user_button = Tkinter.Button(self.root,
text=name,
command=lambda: self.a(name))
user_button.grid(row = row, column = 0)
row+=1
und für die Tasten jeweils ihre eigenen Parameter erhalten (Test bekommt Test- und Test2 bekommt Test2), aber wenn ich die Tasten drücke, drucken beide "Test2", was bedeutet, dass sie dieselbe Funktion mit dem gleichen Parameter verwenden.
Wie kann ich das lösen?
Vielen Dank! funktioniert jetzt einwandfrei: D – Shay
Es handelt sich nicht um ein Problem, sondern um ein Problem bei der Verschachtelung von Funktionen, Schließungen usw. Es existiert auch in völlig anderen Zusammenhängen. Trotzdem +1, wie es sonst genau beschreibt, was passiert. – glglgl
@glglgl Sie sind zu 100% korrekt. Nicht die beste Wortwahl meinerseits, wird revidieren. – mshildt