源代码
版本一
#DrawPython.py
import turtle
turtle.setup(650,350,200,200)
turtle.penup()
turtle.fd(-250)
turtle.pendown()
turtle.pensize(25)
turtle.pencolor("purple")
turtle.seth(-40)
for i in range(4):
turtle.circle(40,80)
turtle.circle(-40,80)
turtle.circle(40,80/2)
turtle.fd(40)
turtle.circle(16,180)
turtle.fd(40*2/3)
版本二
#DrawPython.py
from turtle import *
setup(650,350,200,200)
penup()
fd(-250)
pendown()
pensize(25)
pencolor("purple")
seth(-40)
for i in range(4):
circle(40,80)
circle(-40,80)
circle(40,80/2)
fd(40)
circle(16,180)
fd(40*2/3)
运行结果
程序分析
(1)程序运行main()函数中语句,遇到setup函数,Turtle中的turtle.setup()函数用于启动一个图形窗口,它有四个参数: turtle.setup(width, height, startx, starty)分别是:启动窗口的宽度和高度;表示窗口启动时,窗口左上角在屏幕中的坐标位置。
我们所使用的显示屏幕也是一个坐标系,该坐标系以左上角为原点,向左和向下分别是x轴和y轴。蟒蛇程序代码启动一个1300像素宽、800像素高的窗口,该窗口的左上角是屏幕的左上角。
(2)Turtle中的turtle.pensize()函数表示小乌龟运动轨迹的宽度它包含一个输入参数,这里我们把它设为25像素,用pythonsize变量表示。
(3)Turtle中的turtle.pencolor()函数表示小乌龟运动轨迹的颜色。它包含一个输入参数,这里我们把它设为蓝色,blue,其他颜色单词也可以使用。Turtle采用RGB方式来定义颜色,如果希望获得和图片中颜色一致的小蛇,请输入 turtle.pencolor(“#3B9909”)
(4)Turtle中的turtle.seth(angle)函数表示小乌龟启动时运动的方向。它包含一个输入参数,是角度值。其中,0表示向东,90度向北,180度向西,270度向南;负值表示相反方向。
程序中,我们让小乌龟向-40度启动爬行,即:向东南方向40度。
(5)main()函数给出了小乌龟爬行的窗体大小,爬行轨迹 颜色和宽度以及初始爬行的方位。调用函数启动绘制蟒蛇的功能。
(6)turtle.circle()函数让小乌龟沿着一个圆形爬行,rad描述圆形轨迹半径的位置,
这个半径在小乌龟运行的左侧rad远位置处,如果 rad为负值,则半径在小乌龟运行的右侧,参数angle表示小乌龟沿着圆形爬行的弧度值
(7)turtle.fd()函数也可以用turtle.forward()表示乌龟向前直线爬行移动,表示小乌龟向前直线爬行移动,它有一个参数表示爬行的距离