python的强大在于它有许多的强大的库,turtle就是其中之一。
利用turtle,你可以进行交互式的绘画,作为一个艺术白痴,想要画一幅画可能很困难,但是利用python的turtle库,只需要几行代码你就能实现绘画。
turtle是python自带的一个库,直接调用就可以了。
以下的两种方法都可以进行turtle库的调用。
import turtle from turtle import *
然后接下来我们需要了解一下turtle的基本语句,为画图打好基础。
turtle绘图窗体布局
画布就是turtle为我们展开用于绘图区域,我们可以设置它的大小和初始位置。setup()设置窗体大小及位置 。
格式:
turtle.setup(width,height,startx,starty)
4个参数中后两个可选。
setup函数不是必须的,只有当需要控制绘图窗体大小的时候才调用。
画布(canvas)
画布就是turtle为我们展开用于绘图区域,我们可以设置它的大小和初始位置。
设置画布大小命令:
turtle.screensize(canvwidth=None, canvheight=None, bg=None),参数分别为画布的宽(单位像素), 高, 背景颜色。
turtle.screensize() #返回默认大小(400, 300)
移动
现在,我们尝试用上表中的命令来操作一下,看看turtle是怎么运动的。
import turtle turtle.forward(100)#从当前画笔方向移动100 turtle.left(90)#逆时针移动90° turtle.backward(200)#在当前画笔方向的反方向移动200 turtle.right(90)#顺时针移动90° turtle.circle(200)#画一个半径为200的圆,圆心在画笔左边 turtle.pendown()#落下画笔 turtle.goto(150,150)#移动到(150,150)的位置 turtle.speed(60)#速度为60
运行的结果:
颜色
在turtle库中,有许多颜色可供画图使用,以下的色板中,大多数颜色在turtle中都是可使用的。
图片来源于网络
import turtle turtle.begin_fill() #开始填充 turtle.color("red") #填充黑色 turtle.circle(40) turtle.end_fill() #填充结束 turtle.hideturtle()#隐藏画笔形状
全局控制命令
import turtle turtle.color("dodgerblue") turtle.write("DataCastle", font = ("Times", 18, "bold"))
turtle库小练习
·画一组同心圆
import turtle turtle.circle(20)#先画一个半径为20的圆 turtle.up()#抬起画笔 turtle.goto(0,-10)#将画笔移动到(0,-10)处 turtle.down()#落下画笔,后面操作同上 turtle.circle(30) turtle.up() turtle.goto(0,-20) turtle.down() turtle.circle(40) turtle.hideturtle()
·画一个五角星
from turtle import * pencolor("yellow") fillcolor("yellow") begin_fill() while True: forward(200) right(144) if abs(pos()) < 1: break end_fill()
·经典的太阳花
from turtle import * color('red', 'yellow') begin_fill() while True: forward(200) left(170) if abs(pos()) < 1: break end_fill() done()
按照一定次数循环执行一组语句。
语法格式
for <变量> in range(<次数>) :
<被循环执行的语句>
<变量>表示每次循环的计数,0到(<次数>-1)
from turtle import * for i in range(500): #重复500次 forward(i) left(90)
当把角度变换一下,会发生什么呢?
from turtle import * for i in range(500): #重复500次 forward(i) left(91)
除了这些简单的笔画,还有大神画小猪佩奇,画圣诞树的,因此,不得不说turtle是一个神奇的库。
那还等什么,赶紧试试吧!
如果你想了解更多数据科学方面的知识,欢迎关注我们的公众号:DC学习助手