解决python彩色螺旋线绘制引发的问题

yipeiwu_com6年前Python基础

彩色螺旋线的绘制代码如下:

import turtle
import time
turtle.pensize(2)
turtle.bgcolor('black')
colors = ['red', 'yellow', 'purple', 'blue']
turtle.tracer(False)
for x in range(400):
 turtle.forward(2*x)
 turtle.color(colors[x % 4])
 turtle.left(91)
turtle.tracer(True)
time.sleep(3) 

但我稍稍把代码改了一下:

from turtle import *
from time import *
p = Turtle()
p.pensize(2)
p.bgcolor("black")
colors = ["red", "yellow", 'purple', 'blue']
p._tracer(False)
for x in range(400):
 p.forward(2*x)
 p.color(colors[x % 4])
 p.left(91)
p._tracer(True)

出现错误:'Turtle' object has no attribute 'bgcolor'。查了一下,问题在于Turtle对象p没有bgcolor方法,虽然乌龟模块本身有bgcolor方法。

于是我又将代码改为:

from turtle import *
from time import *
import turtle
p = Turtle()
p.pensize(2)
turtle.bgcolor("black")
colors = ["red", "yellow", 'purple', 'blue']
p._tracer(False)
for x in range(400):
 p.forward(2*x)
 p.color(colors[x % 4])
 p.left(91)
p._tracer(True)

在IDLE中运行可行,效果如图:(PS:可尝试将p._tracer(False)这条语句注释掉,可显示海龟的绘制过程)

至此,在IDLE中可绘制彩色螺旋线的代码完成,但将这段代码放入eclipse中运行发现两个问题。

问题一是画布会出现闪退现象,解决办法是在末尾加语句:

turtle.done()

问题二是语句

turtle.bgcolor("black")

会出现Undefined variable from import: bgcolor的错误提示,但实际上还是可运行的,解决办法:window -- preferences -- pydev -- editor -- code analysis -- Undefined -- undefined variable from import --改成"Waring"。这样会将错误提示改为警告提示。

相关文章

Python 导入文件过程图解

Python 导入文件过程图解

1、同级目录下调用 若在程序 testone.py 中导入模块 testtwo.py , 则直接使用 【import testtwo 或 from testtwo import *】...

python循环监控远程端口的方法

本文实例讲述了python循环监控远程端口的方法。分享给大家供大家参考。具体如下: 在ip.txt中每行一个ip地址和端口号,代码可循环监控这些ip地址的指定端口是否正常 #!/us...

python 梯度法求解函数极值的实例

如下所示: #coding utf-8 a=0.001 #定义收敛步长 xd=1 #定义寻找步长 x=0 #定义一个种子x0 i=0 #循环迭代次数 y=...

python遍历文件目录、批量处理同类文件

python遍历文件目录、批量处理同类文件

本文实例为大家分享了python遍历文件目录、批量处理同类文件的具体代码,供大家参考,具体内容如下 目录操作 1、获取当前目录 import os curr_path=os.path...

Python 闭包,函数分隔作用域,nonlocal声明非局部变量操作示例

本文实例讲述了Python 闭包,函数分隔作用域,nonlocal声明非局部变量操作。分享给大家供大家参考,具体如下: 实例对象也可以实现闭包的功能,不过实例对象消耗的资源(内存)比闭包...