目前正在尝试构建具有多个窗口的程序(主屏幕 - >房东/客户部分 - >日历/计算器等)
我现在非常初学者,我经常遇到两个错误:
Tkinter回调中的异常回溯(最近一次调用最后一次):
文件 “C:\用户\ HP \应用程序数据\本地\程序\ Python的\ Python35-32 \ LIB \ idlelib \ run.py” 第119行,主要 seq,request = rpc.request_queue.get(block = True,timeout = 0.05)文件 “C:\用户\ HP \应用程序数据\本地\程序\ Python的\ Python35-32 \ LIB \ queue.py” 第172行,在得到 raise empty queue.Empty
另一个查询;我收到的错误是如何定义“自我”(“自我未定义”)
修改
我的代码非常缺乏功能 - 我认为查看我的代码可能会让你心脏病发作。当我想要运行代码时,我希望一次有1个屏幕,目前有3个在开始时出现,我假设这也是我使用错误的继承或其他东西
这里太大了,所以你可以在这里轻松查看代码
说实话,任何帮助都会受到赞赏。我第一次在python上做一些复杂的事情,比如一个带有日历,计算器等功能的工作程序
干杯 罗斯
答案 0 :(得分:0)
File "C:\Users\HP\AppData\Local\Programs\Python\Python35-32\lib\idlelib\run.py",
line 119, in main seq, request = rpc.request_queue.get(block=True, timeout=0.05)
File "C:\Users\HP\AppData\Local\Programs\Python\Python35-32\lib\queue.py", line 172,
in get raise Empty queue.Empty
这两行
request = rpc.request_queue.get(block=True, timeout=0.05)
raise Empty queue.Empty
建议您尝试从空队列中获取数据,并引发异常。处理此问题的正确方法是将此代码放在 try..except 块中,捕获异常并相应地处理它。 Here是关于此事的一个不错的教程。
try:
....
request = rpc.request_queue.get(block=True, timeout=0.05)
....
except Exception,e:
# this will cath all exceptions derived from the exception class
关于您的第二个查询,我强烈建议您发布一个新问题,而不是捆绑它们。
但我会尝试提出一些建议:self用于处理类的实例,它是当前使用的对象。你不能定义' self,您在类实现中使用它来告诉python您的方法将用于特定实例,而不是全局范围。
class demo:
def __init__(self):
self.a = 5
def foo(self):
self.a = 6
def global_foo():
print 'global_foo'