提示:网站:中国大学MOOC以及Python123
一、turtle是什么?
turtle是一个预安装的Python库,使用户可以用该库提的供虚拟画布来创建图片和形状。
二、以绘制蟒蛇为例进行turtle相关知识的学习
1.代码展示
import turtle
turtle.setup(650,350,200,200)
turtle.penup()
turtle.fd(-250)
turtle.pendown()
turtle.pensize(25)
turtle.pencolor("purple")
turtle.seth(-40)
for i in range(4):
turtle.circle(40,80)
turtle.circle(-40,80)
turtle.circle(40,80/2)
turtle.fd(40)
turtle.circle(16,180)
turtle.fd(40*2/3)
turtle.done()
2.绘图窗体布局
turtle.setup(650,350,200,200)
单位:像素
turtle.setup()调整绘图窗体在电脑屏幕中的布局,其中电脑屏幕左上角为(0,0)
窗体的大小及位置:turtle.setup(width,height,startx,starty)----窗体设置不是必须的
3.坐标体系
画布上以中心为原点的空间坐标系:绝对坐标&海龟坐标
画布上以空间X轴为0度的角度坐标系:绝对角度&海龟角度
3.1空间坐标体系
从画布的中心位置出发——绝对坐标
使用turtle.goto()可以实现去到某点
3.2相对坐标体系
fd 当前位置的正前方
bk 当前位置的正后方
circle 以海龟当前位置左侧的某一个点为圆心进行曲线运行
3.3角度坐标体系
seth()改变海龟行进的方向,只改变方向但不行进
4.RGB色彩体系
整数值与小数值都是可以表示色彩,默认采用小数值,需要切换为整数值时,可以
turtle.colormode(mode)
5.语法元素
5.1库引用函数
①库引用:import
库名.函数名(函数参数)
②from <库名> import <函数名> 不同使用库名的形式
注意:import * 代表的是后续可以直接使用模块内部的函数
5.2画笔控制函数
turtle.penup()
turtle.pendown()
turtle.pensize(25)
turtle.pencolor("purple")
画笔操作:
penup---pu
pendown---pd
画笔大小:pensize /size
5.3运动控制函数
行进方向:fd直线, circle曲线
turtle.forword(d) 别名 turtle.fd(d)
turtle.circle(r,extent=None) 根据半径r绘制extent角度的弧形,r默认在海龟左侧r距离的位置上,r为负数时,在海龟右侧r距离的位置上。
5.4方向函数
turtle.setheading(angle) 别名 turtle.seth(angle) 改变行进方向,海龟走角度
三.习题
绘制六边形
import turtle
turtle.penup()
turtle.pensize(8)
turtle.fd(-200)
turtle.pendown()
for i in range(6):
turtle.fd(100)
turtle.left(60)
turtle.done()
turtle叠边形绘制
使用turtle库,绘制一个叠边形,其中,叠边形内角为100度。
import turtle
turtle.penup()
turtle.pensize(8)
turtle.pendown()
for i in range(9):
turtle.fd(150)
turtle.left(80)
turtle.done()
turtle风轮绘制
使用turtle库,绘制一个风轮效果,其中,每个风轮内角为45度,风轮边长150像素。
提示:turtle.goto(x,y)函数,能够将turtle画笔移动到坐标(x,y)
#风轮绘制
import turtle
turtle.pensize(2)
for i in range(4):
#调整方向
turtle.seth(90*i)
#向前走150像素
turtle.fd(150)
#海龟朝右方向---为啥朝右,是为了让下面的circle值的圆形方向正为原点,如果删掉的话,就会画面的正左方处画一小圆弧
turtle.right(90)
#以右边的150像素处为起点,画45度弧
turtle.circle(-150,45)
turtle.goto(0,0)
turtle.done()