[Python急救站课程]蟒蛇的绘制
Python的英文是有蟒蛇的意思,用Python画一条蟒蛇试试吧
一、普通蟒蛇的绘制
import turtle # 调用turtle(海龟绘图)加as t表示将库名改命名为t,后续用t.(函数名表式)。
# 可以用from turtle import * 表示
turtle.setup(650, 350, 200, 200) # setup控制方向
# setup(
# 650是窗口宽度(整数表示像素,小数表示窗口宽度与屏幕的比),
# 350窗口高度(整数表示像素,小数表示窗口高度与屏幕的比),
# 200是窗口左侧与屏幕左侧的像素距离(如果值为None,窗口位于屏幕水平中央),
# 200是窗口顶端与屏幕底端的像素距离(如果值为None,窗口位于屏幕垂直中央),
# )
turtle.penup() # penup或pu或up,抬起画笔
turtle.fd(-250) # fd或forward,控制画笔前进方向,值为负值时,反方向前进
turtle.pendown() # pendown或pd或down,落下画笔
turtle.pensize(25) # pensize或width,设置画笔宽度,无参数时输入时返回当前画笔宽度,None或空,则函数返回当前画笔宽度
turtle.pencolor("purple") # pencolor或color,设置画笔颜色,为空则为黑色
turtle.seth(-40) # seth控制前进角度
for i in range(4): # 用for做遍历循环赋值给i,给函数range
turtle.circle(40, 80) # 绘制弧形,circle(radius(弧的半径),extent(圆心角的度数),steps(弧的段数))
turtle.circle(-40, 80)
turtle.circle(40, 80 / 2)
turtle.fd(40)
turtle.circle(16, 180)
turtle.fd(40 * 2 / 3)
turtle.done() # 不让窗口关闭
二、蟒蛇的绘制封装
def drawSnake(radius, angle, length):
turtle.seth(-40)
for i in range(length):
turtle.circle(radius, angle)
turtle.circle(-radius, angle)
turtle.circle(radius, angle / 2)
turtle.fd(40)
turtle.circle(16, 180)
turtle.fd(40 * 2 / 3)
turtle.setup(650, 350, 200, 200)
turtle.penup()
turtle.fd(-250)
turtle.pendown()
turtle.pensize(25)
turtle.pencolor("purple")
drawSnake(40, 80, 4)
turtle.done()
程序运行结果如下
三、彩色蟒蛇的绘制
import turtle
turtle.setup(650, 350, 200, 200)
turtle.penup()
turtle.fd(-250)
turtle.pendown()
turtle.pensize(25)
turtle.pencolor("red")
turtle.seth(-40)
for i in range(2):
turtle.circle(40, 80)
turtle.pencolor("violet")
turtle.circle(-40, 80)
turtle.pencolor("green")
turtle.circle(40, 80)
turtle.pencolor("purple")
turtle.circle(-40, 80)
# turtle.pencolor("blue")
turtle.circle(40, 80 / 2)
turtle.fd(40)
turtle.pencolor("yellow")
turtle.circle(16, 180)
turtle.fd(40 * 2 / 3)
程序运行结果如下:
以上就是一些蟒蛇的绘制方法