如何利用Python的Turtle模块来绘图?
Turtle简介
Turtle 是 Python 中自带的绘图模块,无需额外安装,使用比较方便。
Turtle最初来自于 Wally Feurzeig, Seymour Papert 和 Cynthia Solomon 于 1967 年所创造的 Logo 编程语言。
Turtle中的方法有很多,我们这里只会介绍其中几种常用方法,更多的方法可以去官方文档了解,官方文档地址如下:Turtle官方文档
Turtle的画板和画笔
我们可以把Turtle运行的环境看作一个空白的画板,默认状态下画笔的初始位置在画板最中间的位置(0,0),以此为原点形成一个看不见的坐标系,而坐标的刻度单位为像素。我们实际上就是利用Turtle控制画笔在画板上画画。
画笔是可以设置形状的,默认为一个小箭头,我们可以使用turtle.shape('turtle')
把画笔设置为一只小乌龟。小乌龟的头默认是朝向东的。画笔的形状和颜色都可以设置成其他的多种选择,我们这里不详细介绍。
用Turtle画图
直线
最简单的就是利用Turtle画直线,举例来说我们想画一条50像素的红色直线:
import turtle
turtle.shape('turtle')
turtle.color('red')
turtle.forward(50)
正方形
import turtle
turtle.shape('turtle')
turtle.color('yellow')
turtle.forward(50)
turtle.right(90)
turtle.forward(50)
turtle.right(90)
turtle.forward(50)
turtle.right(90)
turtle.forward(50)
turtle.right(90)
红色五角星
import turtle
turtle.color('red')
turtle.hideturtle()
turtle.begin_fill() # 开始填充
for i in range(5):
turtle.forward(50)
turtle.right(144)
turtle.end_fill() # 结束填充
白色满天星
import turtle
from random import randint
def draw_star():
turtle.color('white')
turtle.hideturtle()
turtle.begin_fill()
for i in range(5):
turtle.forward(10)
turtle.right(144)
turtle.end_fill()
for i in range(50):
turtle.speed(0)
turtle.penup()
x = randint(-150, 150)
y = randint(-100, 100)
turtle.goto(x, y)
turtle.pendown()
draw_star()
turtle.penup()
turtle.goto(0, -130)
turtle.pendown()
转载自:https://juejin.cn/post/6845166891053350926