Python3乌龟将代码保存到文件

时间:2018-07-04 18:42:59

标签: python python-3.x turtle-graphics pc

我是Python乌龟库的新手,但我遇到的一个问题令我非常困惑。 我可以实时使用turtle,但是当我编写程序并将其保存到文件时,无法运行它。 我编写的代码如下:

from turtle import *

speed(9999999)
penup()
for i in range(16):
  write(i,align='center')
  forward(25)
goto(0,-5)
x=0
right(90)
for i in range(16):
  pendown()
  forward(400)
  penup()
  x+=25
  goto(x,-5)

但是它根本不起作用。 它给了我这个错误:

Traceback (most recent call last):
  File "C:\Users\Nobody\Desktop\main.py", line 3, in <module>
    turtle.Pen(9999999)
NameError: name 'turtle' is not defined

我认为它根本不进口乌龟。

新功能: 在您的建议后,我仍然通过它修复了我的代码,并且现在可以正常工作 谢谢你们的帮助 真的帮了我

3 个答案:

答案 0 :(得分:1)

您将自己的文件命名为turtle.py

因此,您的main.py正在导入您自己的turtle.py,而不是python的turtle模块。

从桌面上删除turtle.py(和自动生成的turtle.pyc)。

from turtle import * 

此行将所有内容导入默认的模块名称空间,因此您无需在任何内容前添加turtle.前缀

您只需要turtle.Pen而不是Pen

答案 1 :(得分:0)

  

从海龟进口*

字面意思是:从文件turtle.py导入所有文件。 Python解释器首先在当前目录中检查是否与turtle.py匹配,如果未找到任何内容,它将在库文件夹中进行搜索。

对于您而言,您要从turtle.py导入所有类,所有函数和所有全局变量(至少不是私有变量),因此您需要使用

  

笔(9999999)

代替

  

turtle.Pen(9999999)

答案 2 :(得分:0)

这是对您的代码的重做,对我来说很好:

from turtle import *

speed('fastest')
penup()

for i in range(16):
    write(i, align='center')
    forward(25)

goto(0, -5)
right(90)

x = 0

for i in range(16):
    pendown()
    forward(400)
    penup()
    x += 25
    goto(x, -5)

hideturtle()

done()

如果它适合您,那就太好了。如果没有,请以评论的形式告诉我们您得到的完整错误。确保没有@nosklo注释,没有个人的turtle.py文件。

我的建议是,在调用库函数时,最好查找而不是组成。