Python turtle库(绘制螺旋正方形)
作者:.
这篇文章主要介绍了Python turtle库(绘制螺旋正方形),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
turtle库绘制螺旋正方形
1.螺旋正方形
import turtle #导入turtle库 turtle.pensize(2) #设置画笔的宽度(2) for i in range(100): #循环(画)100次 turtle.fd(i + (i * 2)) #每次循环画笔长度i+(i*2) #(不能覆盖掉i-1的正方形的意思?) turtle.left(90) #左转90° turtle.hideturtle() #隐藏画笔 turtle.done() #停留画面
运行结果:
2.彩色螺旋正方形
import turtle #导入turtle库 turtle.pensize(2) #设置画笔的宽度(2) turtle.bgcolor("black") #背景颜色(黑色) colors = ["blue","yellow","red","pink"] #定义颜色(4中颜色) for i in range(120): #循环(画)120次 turtle.pencolor(colors[i % 4]) #画笔颜色 turtle.fd(i+(i*2)) #每次循环画线长度i+(i*2) turtle.left(90) #左转90° turtle.hideturtle() #隐藏画笔 turtle.done() #停留画面
运行结果:
第三方库turtle的应用
turtle库用于绘制图形的内置函数库。turtle是海龟的意思,turtle绘图可以描述为海归爬行轨迹形成了绘制的图形,所以绘图十分直观
1.pip安装turtle库
打开cmd,输入
pip install turtle
2.绘图坐标系
turtle画布上默认为原点是画布中心,坐标原点是 (0,0),X轴左右侧分别为后退和前进方向,Y轴上下两侧分别为左右两侧方向
turtle.setup(width,height.top,left) 参数width和height表示绘图窗口的宽度和高度;如果参数是整数,则单位是像素;如果参数是小数,则表示与屏幕的比例。参数top和left表示窗口左边界和上边界与屏幕边界的距离,如果值是None,表示位于屏幕中央(一般情况下不设置这两个参数的值)
3.turtle的画笔控制方法
turtle的画笔控制方法主要是设置画笔的状态,如画笔的抬起和下落状态,设置的画笔的宽度和颜色等
方法 | 功能 |
turtle.pensize()/width | 设置画笔的宽度,若为空则返回当前画笔的宽度 |
turtle.pendown()/pd()/down() | 放下画笔,即结束图形绘制 |
turtle.penup()/pu()/up() | 提起画笔,用于移动画笔位置 |
turtle.pencolor(colorstring)/pencolor((r,g,b)) | 设置画笔颜色,第一个为颜色字符串,例('blue');第二个为颜色值取值表示 |
4.turtle的图形绘制方法
这个方法包括画笔的前进方法,后退,方向控制等
方法 | 功能 |
turtle.seth(angle)/setheading(angle) | 改变画笔绘制方向,angle是绝对方向的绝对值 |
turtle.fd(distance)/forward(distance) | 控制画笔沿当前方向前进distance距离,distance的单位是像素,当值为负数时,表示向相反的的方向前进 |
turtle.circle(radius,extents) | 用来绘制一个弧形,根据半径radius绘制extens角度的弧形 |
turtle.left(angle) | 向左旋转angle角度 |
turtle.setx(x) | 将当前x轴移动到指定位置,x的单位是像素 |
turtle.sety(y) | 将当前轴y移动到指定位置,y的单位是像素 |
turtle.right(angle) | 向右旋转angle角度 |
turtle.shape("name") | 设置画笔的形状,例:将name设置成‘turtle’ |
turtle.speed(num) | 设置画笔的速度,num是一个整数 |
turtle.hideturtle() | 隐藏画笔 |
5.简单应用示例
绘制蓝色螺旋代码
import turtle as tt '''绘制蓝色正方形螺旋''' tt.setup(400, 300) # 设置窗口大小 tt.pensize(1) # 设置画笔宽度 tt.pencolor('blue') # 设置画笔颜色 tt.shape('turtle') # 设置画笔形状 tt.speed(5) # 设置画笔速度 a = 5 #设置画笔起始位置 for i in range(40): a += 5 tt.left(90) tt.fd(a) tt.hideturtle() #隐藏画笔 tt.done() #放下画笔,结束绘制
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。