Python 3 Tkinter:带有Entry小部件的NameError:未定义名称“Entry”

时间:2017-09-02 17:36:53

标签: python user-interface tkinter nameerror tkinter-entry

我正在使用Tkinter在Python 3上编写GUI,但每次使用Entry()时,都会出现名称错误。

我尝试了一个更简单的代码版本(如下所示),但它仍然导致了NameError:

import tkinter
top = tkinter.Tk()

e = Entry(top)
e.pack()

top.mainloop()

这是我得到的错误:

Traceback (most recent call last):
  File "/home/pi/gui.py", line 4, in <module>
    e = Entry()
NameError: name 'Entry' is not defined

我最近才重新开始编码,所以答案可能非常简单,我没有意识到代码是错的,但感谢您的回答。

3 个答案:

答案 0 :(得分:3)

你没有导入它。将您的代码更改为:

e = tkinter.Entry(top)

或明确导入:

from tkinter import Entry

答案 1 :(得分:2)

您没有将Entry导入到本地命名空间,因此您需要从导入的模块中访问它:

e = tkinter.Entry(top)

答案 2 :(得分:0)

由于您导入了tkinter模块,因此每个tkinter操作都需要以tkinter开头。[函数名称]。

您也可以添加:

from tkinter import [function name]

要导入多个功能,请用逗号分隔它们。

如果您使用了很多功能,最好使用

导入每个功能
from tkinter import *