我在Python中接收错误(Tkinter)

时间:2016-02-10 11:46:52

标签: python tkinter

目前正在尝试构建具有多个窗口的程序(主屏幕 - >房东/客户部分 - >日历/计算器等)

我现在非常初学者,我经常遇到两个错误:

  

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个在开始时出现,我假设这也是我使用错误的继承或其他东西

这里太大了,所以你可以在这里轻松查看代码

http://textuploader.com/525p5

说实话,任何帮助都会受到赞赏。我第一次在python上做一些复杂的事情,比如一个带有日历,计算器等功能的工作程序

干杯 罗斯

1 个答案:

答案 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'
相关问题