Python 3 Tkinter:带有条目小部件的 NameError:名称 'Entry' 未定义

Python 3 Tkinter: NameError with Entry widget: name 'Entry' is not defined

我正在使用 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

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

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

e = tkinter.Entry(top)

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

e = tkinter.Entry(top)

或显式导入:

from tkinter import Entry

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

您也可以只添加:

from tkinter import [function name]

要导入多个函数,请用逗号分隔它们。

如果你使用的函数很多,最好每个函数都导入,用

from tkinter import *