为什么python不能识别tkinter中的my side=TOP和fill=x属性

为什么python不能识别tkinter中的my side=TOP和fill=x属性,python,tkinter,pack,Python,Tkinter,Pack,我在tkinter网格单元中有一个框架。在框架内,我想包装2个标签 但是,当我尝试应用一个侧面进行打包或填充时,会出现一个名称错误,例如 NameError:未定义名称“TOP” 我试着在网上查阅教程和我的Tkinter书,但仍然看不出错误是什么。我尝试过大写、小写和边上带引号的填充选项,但仍然没有乐趣 import tkinter as tk MAINFONT = "Marcellus SC" SUBFONT = "Oswald" TEXT_SIZE = 12 SPACER = 37 #th

我在tkinter网格单元中有一个框架。在框架内,我想包装2个标签

但是,当我尝试应用一个侧面进行打包或填充时,会出现一个名称错误,例如

NameError:未定义名称“TOP”

我试着在网上查阅教程和我的Tkinter书,但仍然看不出错误是什么。我尝试过大写、小写和边上带引号的填充选项,但仍然没有乐趣

import tkinter as tk

MAINFONT = "Marcellus SC"
SUBFONT = "Oswald"
TEXT_SIZE = 12
SPACER = 37 #this  is the padding beween cells

root = tk.Tk()

#Other rows have been established

question_1_frm = tk.Frame(border = 1)
question_1_frm.grid(row = 3, column = 2, sticky = "NW")
first_question_lbl = tk.Label(question_1_frm, text = question_1, font = (MAINFONT, TEXT_SIZE), bg = "white", wraplength = 403*scale_factor_x, justify="left")
first_question_lbl.pack()
first_answer_lbl = tk.Label(question_1_frm, font =(MAINFONT,TEXT_SIZE))
first_answer_lbl.pack(side =TOP, fill=X)

root.mainloop()

我想把第一个问题和第一个答案都放进父框架中,前者放在后者的下面,但我一直在努力

NameError:未定义名称“TOP”

从侧面=顶部

我收到了一条类似的消息,只需填充=x

谢谢Jason

TOP在tkinter模块中声明,您将其作为tk导入,因此您可以作为tk.TOP访问它。您看到的单独使用TOP的任何代码都必须是从tkinter import*中完成的,tkinter import*不分青红皂白地从模块中引入所有已定义的名称贾森哈珀


tk.TOP和tk.X现在工作正常

TOP
tkinter
模块中声明,您将其作为
tk
导入,因此您可以作为
tk.TOP
访问它。您看到的任何单独使用
TOP
的代码都必须是从tkinter import*中执行的
,这将不分青红皂白地从模块中引入所有已定义的名称。太棒了!tk.TOP和tk.X现在工作正常。非常感谢您可以使用字符串
top
x
两者都可以,等等,而且它们总是有效的。变量
tk.TOP
具有值
“TOP”
等。