龟模块没有属性颜色?

时间:2012-07-05 14:05:26

标签: python python-3.2 turtle-graphics

当我尝试从Python documentation on turtle运行第一段示例代码时:

from turtle import *
color('red', 'yellow')
begin_fill()
while True:
    forward(200)
    left(170)
    if abs(pos()) < 1:
        break
end_fill()
done()

我得到NameError

  

NameError:未定义名称'color'

调整import并手动指定模块也不起作用:

import turtle
turtle.color('red', 'yellow')
turtle.begin_fill()
while True:
    turtle.forward(200)
    turtle.left(170)
    if abs(turtle.pos()) < 1:
        break
turtle.end_fill()
turtle.done()

根据文档,我使用的是Python v3.2.3,其中包含turtle.color。 Python也安装了tkinter支持,因为import tkinter也可以。

完整的痕迹是:

Traceback (most recent call last):
  File "<path name that contains no spaces>/turtle.py", line 1, in <module>
    from turtle import *
  File "<path name that contains no spaces>\turtle.py", line 2, in <module>
    color('red', 'yellow')
NameError: name 'color' is not defined

有多奇怪。如果我输入shell,无论是命令行还是IDLE,并一次输入一个命令:

>>> from turtle import *
>>> color('red', 'yellow')

没有问题。只有当我在IDLE中打开一个新窗口时,输入所有命令,然后运行脚本。

1 个答案:

答案 0 :(得分:13)

您将文件命名为“turtle.py”,因此当您import turtle时,您将导入自己的文件而不是stdlib模块。更改程序的名称,并删除该目录中的所有.pyc文件。