You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为什么运行Tkinter代码时报错NameError: name 'Label' is not defined

报错触发原因

  • 导入调用不匹配:你使用import tkinter as tk将tkinter模块别名导入为tk,所有tkinter内置的组件类、方法都需要添加tk.前缀才能被Python识别,你代码中直接调用未声明的Label变量,因此触发NameError。
  • 存在隐藏布局冲突:你同时对同一个组件调用了place()和pack()两种布局管理器,tkinter规定同一组件只能使用一种布局方式,即使解决了变量未定义的问题,后续也会触发布局冲突报错。另外place()方法返回值为None,你将Label(xxx).place(xxx)直接赋值给testlabel,会导致testlabel变量值为空,无法调用后续的pack()方法。

修复方案

调整代码如下即可正常运行:

import tkinter as tk

root = tk.Tk()
root.geometry('800x600')
root.title('Test project...')

# 调用组件加tk前缀,仅保留一种布局方式,这里以place为例
testlabel = tk.Label(root, text= "Hello world!!")
testlabel.place(x = 40, y = 130)

root.mainloop()

内容的提问来源于stack exchange,提问作者Bence Turi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 08:36:06