【发布时间】:2017-11-12 10:45:05
【问题描述】:
我想制作一个随机数生成器,我用 tkinter 制作了一个 GUI,我想使用 Entries 来设置 min. number 和 max. number 但我收到了这个错误:
TypeError, 'str' 不可调用它来自 "i = randint(str(min_val()), str(max_val()))"
这里是完整的功能:
def gen():
min_val = str(entry1.get())
max_val = str(entry2.get())
i = randint(str(min_val()), str(max_val()))
root.update_idletasks()
v.set(i)
【问题讨论】:
-
randint 函数需要整数参数。似乎您将字符串传递给 randint 函数(使用函数 str())
-
您期望
min_val()与min_val有什么不同?另外,你的代码真的是这样写的吗,最后三行not缩进到gen()内部? -
Python 不会抛出包含短语“它来自...”的错误。您能否发布 exact 错误消息,包括回溯?
-
Tkinter 回调 Traceback 中的异常(最近一次调用最后一次):文件“C:\Users\Chris\AppData\Local\Programs\Python\Python36-32\lib\tkinter_init_ i>.py",第 1699 行,在 call 中返回 self.func(*args) 文件“C:\Users\Chris\Desktop\python\Random Number Generator.py”,第 18 行,在gen i = randint(str(min_val()), str(max_val())) TypeError: 'str' object is not callable
标签: python tkinter tkinter-entry