引、想要使用python作画吗? 那就用turtle库吧,使用它可以在屏幕的画板上绘制出各种图像。操控这只turtle(海龟)在屏幕上爬行,根据坐标定位,沿途的足迹,就是你想要的图像。
一、使用方法:
1、引入方式(两种):
import turtle #导入turtle库,使用时通过turtle.function调用
from turtle import * #导入turtle库中所有方法,直接通过function调用
2、控制画笔状态函数:
pendown() | pd() | down() #放下画笔,不作画
penup() | pu() | up() #拿起画笔,准备开始作画
pensize(width) | width(width) #设置画笔的宽度
3、控制画笔颜色的函数:
color() #控制画笔颜色和填充颜色
begin_fill() | end_fill() #开始填充,结束填充
...
4、控制画笔运动函数:
forward(distance) | fd(dis) #画笔向前移动
backward(distance)| bk(dis) | back(dis) #向后移动
right(angle) | rt(angle) #画笔朝向右转angle的角度
left(angle) | lt(angle) #画笔朝向左转angle的角度
goto(x,y) #移动画笔到坐标(x,y)处
更多详细文档可查阅python官方对于turtle某块的介绍:
https://docs.python.org/2/library/turtle.html#module-turtle
二、实战
这里使用的是python的IDLE
1、五边形:
#导入turtle库,使用时需声明方法来自turtle库,形如turtle.function()
import turtle
if __name__ == '__main__': #文件作为脚本执行时,才执行的代码
while True:
turtle.forward(100) #画笔朝前移动100单位
turtle.right(72) #画笔朝向右转72度,因为360/5=72度
'''
turtle.pos()返回一个2维向量,abs(vec2D)返回这个向量的值,可以理解为画笔所在位置(x,y)与默认出发点(0,0)的距离
'''
if abs(turtle.pos()) < 1:
break
结果:
注:图上的小游标就是那只turtle了,箭头就是海龟的朝向
2、五角星:类似五边形,重新计算角度
import turtle
if __name__ == '__main__':
turtle.pensize(10) #画笔宽度10单位
turtle.color("black","yellow") #画笔颜色black,填充颜色yellow,也可以用rgb格式
turtle.begin_fill() #开始填充
while True:
turtle.forward(200)
turtle.right(144) #五角星每个角为36°,180-36=144
if abs(turtle.pos()) < 1:
break
turtle.end_fill() #结束填充
结果:
3、连环
import turtle
def drawCircle(color,radix):
turtle.color(color) #设置画笔颜色
turtle.circle(radix) #画圈,半径为50
if __name__ == '__main__':
radix = 50
pensize = 5
fd = 4 / 5 * radix #forward distance
color = ["black","yellow","blue","green","purple"]
turtle.pensize(pensize)
for x in range(5):
drawCircle(color[x],radix)
turtle.up() #提起画笔,不作画
turtle.forward(fd) #向前移动
turtle.down() #下放画笔,准备作画
结果:
好玩