NameError:name' Tk'没有定义

时间:2014-07-24 00:48:40

标签: python python-2.7 tkinter osx-mavericks

我试图在我的计算机上第一次使用Tkinter,我在标题中收到错误,“NameError:name'Tk'未定义”,引用“line root = Tk()”。我无法让Tkinter以任何形式工作。我目前使用的是python 2.7.5的macbook pro。我曾尝试多次重新下载python但它仍然无法正常工作。 任何人都有任何想法,为什么它不工作?我还需要更多信息吗?

提前致谢

#!/usr/bin/python

from Tkinter import *
root = Tk()
canvas = Canvas(root, width=300, height=200)
canvas.pack()
canvas.create_rectangle(  0,   0, 150, 150, fill="yellow")
canvas.create_rectangle(100,  50, 250, 100, fill="orange", width=5)
canvas.create_rectangle( 50, 100, 150, 200, fill="green", outline="red", width=3)
canvas.create_rectangle(125,  25, 175, 190, fill="purple", width=0)
root.mainloop()

2 个答案:

答案 0 :(得分:2)

你有一些其他模块正在使用名称" Tkinter",遮蔽你真正想要的那个。重命名或删除它。

import Tkinter
print Tkinter.__file__

答案 1 :(得分:0)

你的代码是对的,但导入代码中的缩进是错误的,不要使用一个空格,而是使用两个空格,并且尽量不要输入这个命令:

import tkinter

使用此代码:

from tkinter import  *
root = Tk()
canvas = Canvas(root, width=300, height=200)
canvas.pack()
canvas.create_rectangle(  0,   0, 150, 150, fill="yellow")
canvas.create_rectangle(100,  50, 250, 100, fill="orange", width=5)
canvas.create_rectangle( 50, 100, 150, 200, fill="green", outline="red", width=3)
canvas.create_rectangle(125,  25, 175, 190, fill="purple", width=0)
root.mainloop()

问题也可能是输入“Tkinter”,所以在区分大小写的情况下输入“tkinter”作为python,我认为这应该有效,它对我有用