您好 我刚刚执行了以下代码:
from Tkinter import *
class LabelDemo( Frame ):
def __init__( self ):
Frame.__init__( self )
self.pack( expand = YES, fill = BOTH )
self.master.title( "Labels" )
self.Label3 = Label( self, bitmap = "warning" )
self.Label3.pack( side = LEFT )
if __name__ == "__main__":
LabelDemo().mainloop()
它给了我NameError:名称'LabelDemo'未定义。
可能是什么原因?
答案 0 :(得分:2)
该代码对我也很好。某处必须有缩进错误。那是整个文件吗?你有没有随处可见的标签?
编辑:
这是你的追溯:
Traceback (most recent call last):
File "warning.py", line 3, in <module> class LabelDemo(Frame):
File "warning.py", line 14, in LabelDemo LabelDemo().mainloop()
NameError: name 'LabelDemo' is not defined
这就是说LabelDemo().mainloop()
的调用发生在LabelDemo(Frame)
的类定义中。这意味着您已经缩进了if __name__ == "__main__"
。删除if __name__ ..
行周围的缩进,它应该可以正常工作。
最终编辑:
对代码进行格式化的问题进行了编辑,大概是因为OP不知道怎么做。但是在编辑中,缩进将在以前被破坏的地方进行修复。