Turtle库笔记精华篇
(1)turtle绘图窗体布局
turtle的一个画布空间最小单位是像素
turtle.setup(width, height, startx, starty)
- setup()设置窗体大小及位置
- 4个参数中后两个可选
- setup()不是必须的
(2)turtle角度坐标体系
turtle.seth(angle)
- seth()改变海龟行进方向
- angle为绝对度数
- seth()只改变方向但不行进
(3)RGB色彩体系
每色取值范围0-255整数或0-1小数
turtle的RGB色彩模式:默认采用小数值,可切换为整数值
turtle.colormode(mode)
- 1.0:RGB小数值模式
- 255:RGB整数值模式
(4)库引用
- 使用import保留字完成,采用<a>.<b>()编码风格
import <库名>
<库名>.<函数名>(<函数参数>)
import更多用法:
①使用from和import保留字共同完成
from <库名> import <函数名>
from <库名> import *
<函数名>(<函数参数>)
②两种方法比较
from <库名> import <函数名>
import <库名>
from <库名> import *
<库名>.<函数名>(<函数参数>)
<函数名>(<函数参数>)
第一种方法不会出现函数重名问题,第二种方法则会出现
③使用import和as保留字共同完成
import <库名> as <库别名>
<库别名>.<函数名>(<函数参数>)
给调用的外部库关联一个更短、更适合自己的名字
(5)turtle画笔控制函数
画笔控制函数
- turtle.penup() 别名 turtle.pu() 抬起画笔,海龟在飞行
- turtle.pendown() 别名 turtle.pd() 落下画笔,海龟在爬行
- turtle.pensize(width) 别名 turtle.width(width) 画笔宽度,海龟的腰围
- turtle.pencolor(color) color为颜色字符串或r,g,b值
画笔颜色,海龟在涂装
pencolor(color)的color可以有三种形式
- 颜色字符串 :turtle.pencolor("purple")
- RGB的小数值:turtle.pencolor(0.63, 0.13, 0.94)
- RGB的元组值:turtle.pencolor((0.63,0.13,0.94))
(6)turtle运动控制函数
运动控制函数
控制海龟行进:走直线 & 走曲线
- turtle.forward(d) 别名 turtle.fd(d) 向前行进,海龟走直线
- d: 行进距离,可以为负数
- turtle.circle(r, extent=None) 根据半径r绘制extent角度的弧形
- r: 默认圆心在海龟左侧r距离的位置
- extent: 绘制角度,默认是360度整圆运动控制函数
画笔设置后一直有效,直至下次重新设置
- turtle.forward(d) 别名 turtle.fd(d) 向前行进,海龟走直线
- d: 行进距离,可以为负数
(7)turtle方向控制函数
- turtle.setheading(angle) 别名 turtle.seth(angle)
改变行进方向,海龟走角度
- angle: 行进方向的绝对角度
- turtle.left(angle) 海龟向左转
- turtle.right(angle) 海龟向右转
- angle: 在海龟当前行进方向上旋转的角度
(8)循环语句
按照一定次数循环执行一组语句
for <变量> in range(<次数>):
<被循环执行的语句>
- <变量>表示每次循环的计数,0到<次数>-1
(9)range()函数
产生循环计数序列
- range(N) 产生 0 到 N-1的整数序列,共N个
- range(M,N) 产生 M 到 N-1的整数序列,共N-M个
如: range(5) 0, 1, 2, 3, 4
range(2, 5) 2, 3, 4
小结
- turtle库的海龟绘图法
- turtle.setup()调整绘图窗体在电脑屏幕中的布局
- 画布上以中心为原点的空间坐标系: 绝对坐标&海龟坐标
- 画布上以空间x轴为0度的角度坐标系: 绝对角度&海龟角度
- RGB色彩体系,整数值&小数值,色彩模式切换- 库引用: import、from…import、import…as…
- penup()、pendown()、pensize()、pencolor()
- fd()、circle()、seth()
- 循环语句:for和in、range()函数
原文:https://www.cnblogs.com/slj-xt/p/12465011.html