繁体   English   中英

Tkinter无法识别我的变量

[英]Tkinter doesn't recognize my variable

我试图在Tkinter中制作一个计数器,但由于某种原因,python不能识别我的变量并从我的else语句中打印出来。

from Tkinter import *
import random

a = random.randrange(1,10)
b = random.randrange(1,10)
c = random.randrange(1,10)
d = random.randrange(1,10)
print a, b, c, d

class App:
    def __init__(self, master):

        frame = Frame(master)
        frame.pack()

        self.Input = Entry(frame)
        self.Input.pack()

        self.display = Label(frame, text='')
        self.display.pack(side=BOTTOM)

        self.confirm = Button(frame, text='confirm', command=self.confirm)
        self.confirm.pack(side=BOTTOM)

    def confirm(self):
        enter = self.Input.get()
        abc = 0

        if enter == a:
            abc += 1
            self.display['text'] = abc
            print('a')

        elif enter == b:
            abc += 2
            self.display['text'] = abc
            print('b')

        elif enter == c:
            abc += 3
            self.display['text'] = abc
            print('c')

        elif enter == d:
            abc += 4
            self.display['text'] = abc
            print('d')

        else:
            print('invalid character')



root = Tk()
app = App(root)
root.mainloop()

我想这一行返回一个str ,例如'7'

enter = self.Input.get()

该行返回一个int ,例如7

a = random.randrange(1,10)

注意7 != '7'

您可以尝试更改此行:

enter = int(self.Input.get())

或像这样的行:

if enter == str(a):

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM