解決python彩色螺旋線繪製引發的問題
阿新 • • 發佈:2020-01-09
彩色螺旋線的繪製程式碼如下:
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",'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",'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"。這樣會將錯誤提示改為警告提示。