我正在使用Python中的Tkinter,我遇到了Scale
小部件的问题。我想要做的是对Scale的某些值进行操作。
以下是Scale
代码的一部分:
self.scale = Scale(from_=0, to=100, tickinterval=20, orient=HORIZONTAL, command= self.scale_onChange)
def scale_onChange(self, value):
if(value >= 10):
print "The value is ten"
发生了一些奇怪的事情,当我运行脚本时,比例值为0但是条件似乎为真且打印“值为十”。此外,当我更改比例的值时,即使该值大于10,也不会匹配条件。
答案 0 :(得分:1)
您的类型不匹配。 Traceback (most recent call last):
File "/usr/bin/django-admin", line 18, in <module>
from django.core import management
ImportError: No module named 'django'
是字符串而不是数字类型,在Python 2中。* value
大于'0'
。感谢Tadhg McDonald-Jensen指出这种无声错误是Python 2特有的。*。
10
e.g。
from Tkinter import *
def scale_onChange(value):
print(value)
print(type(value))
if(value >= 10):
print "The value is ten"
master = Tk()
scale = Scale(from_=0, to=100, tickinterval=20, orient=HORIZONTAL, command=scale_onChange)
scale.pack()
mainloop()
在Python 3中的*你出现了错误:
>>> '0' >= 10
True