2016-04-26 3 views
0

Ich bin in Python sehr neu, ich bin auf „x“ Variable mit tkinter Taste geben + 1 versuchen, können Sie mir helfen, damit herauszufinden, bittePlus 1 bis Variable mit tkinter Taste

import tkinter as Tk 

x = 0 

root = Tk.Tk() 

def add(): 

    x == (x + 1) # Here but seems wrong way 

Tk.Button(root, text='PLUS 1 to X', command=add, 
     height=5, width=20,).pack(side=Tk.LEFT) 

root.mainloop() 

Antwort

1

Ich sehe nicht, wo der Wert von x angezeigt werden soll, und ich sehe nicht, wie die aufeinander folgenden Werte von x in Ihrem Code beibehalten werden sollen. Hier ist eine einfache Möglichkeit, es zu tun:

>>> from tkinter import * 
>>> root = Tk() 
>>> def add(): 
...  global x 
...  x += 1 
...  messagebox.showinfo(message=x) 
... 
>>> from tkinter import messagebox 
>>> x = 0 
>>> adder = Button(root, text='ADD 1 TO X', command=add) 
>>> adder.grid() 

Einstellung x als eine globale Variable ermöglicht es innerhalb der Funktion zu ändern und die Änderung, nachdem die Funktion zurückkehrt zu halten. Wie Sie wahrscheinlich wissen, bedeutet x += 1 dasselbe wie x = x+1, d. H. Der neue Wert x ist 1 mehr als der alte Wert.

+0

können Sie auch erklären, dass ['==' ist ein Vergleich] (https://docs.python.org/3/reference/expressions.html?highlight=comparison#value-comparisons) anstelle der Zuordnung. –

+0

Ups, ja, du wirst nie irgendwo hinkommen, wenn du bis 'x == x + 1' wartest! – McClamrock