turtle库的使用

turtle库的使用

一.概述

· turtle的基本介绍
·turtle绘图窗体布局
·turtle空间坐标体系
·turtle角度坐标体系
·turtle色彩体系

二.turtle库的基本介绍

2.1 turtle库的概述

turtle(海龟)库是turtle绘图体系的python实现
·turtle绘图体系:1969年诞生,主要用于程序设计入门
·python语言的标准库之一
·入门级的图形绘制函数库

2.2 标准库

python计算生态 = 标准库+第三方库
·标准库:随解释器直接安装到操作系统中的模块功能
·第三方库:需要经过安装才能使用的功能模块
·库Library.包Package.模块Module.统称模块
2.3turtle的原理
turtle(海归)是一种真实的存在
· 有一只海龟,其实再窗体正中心,在画布上游走
· 走过的轨迹形成了绘制的图形
· 海龟由程序控制,可以变换颜色,改变宽度等
2.4 turtle的魅力
三.turtle绘图窗体布局
3.1 turtle的绘制窗体
turtle.setup(width,height,startx,starty)
· setup()设置窗体大小及位置
·4个参数中后两个可选
· setup() 不是必须的
 
四.turtle空间坐标体系
4.1 turtle空间坐标体系
import turtle
turtle.goto(100,100)
turtle.goto(100,-100)
turtle.goto(-100,-100)
turtle.goto(0,0)
 

五.turtle角度坐标体系

turtle.seth(angle)
·seth()改变海龟行进方向
·angle为绝对度数
·seth()只改变方向但不行进
import turtle
turtle.left(45)
turtle.fd(150)
turtle.right(135)
turtle.fd(300)
turtle.left(135)
turtle.fd(150)
 

六.RGB色彩体系

6.1 RGB色彩模式

由三种颜色构成的万物色
· RGB指红蓝绿三个通道的颜色组合
·覆盖视力所能感知的所有颜色
·RGB每色取值范围0-255整数或0-1小数
 

6.2常用RGB色彩

6.3 turtle的RGB色彩模式

默认采用小数值 可切换为整数值
turtle.colormode(mode)
·1.0: RGB小数指模式
·255:RGB整数值模式
更换模式前:turtle.pencolor('red');更换模式后:turtle.pencolor(0,255,255)or turtle.pencolor(0,1,1)

七.小结

·turtle的海龟绘图法
·turtle.setup()调整绘图窗体在屏幕中的布局
·画布上以中心为原点的空间坐标系:绝对坐标&海龟角度
·画布上以空间x轴为0度的角度坐标系:绝对角度&海龟角度
·RGB色彩体系,整数值&小数指,色彩模式切换

turtle程序语法元素分析

一.概述
  • 库引用与import
  • turtle画笔控制函数
  • turtle运动控制函数
  • turtle方向控制函数
  • 基本循环语句
  • “python蟒蛇绘制”代码分析
二.库引用与import
.()的编码风格
2.1库引用
扩充python程序功能的方式
  • 使用import保留字完成,采用
    <a>.<b>()
    编码风格
    import <库名>
    <库名>.<函数名>(<函数参数>)
    2.2使用from和import保留字共同完成库引用
    from <库名>import<函数名>
    from<库名>import *
    <函数名>(<函数参数>)
 
2.3两种库引用方法比较
1.import<库名>:<库名>.<函数名>(<函数参数>)
2.from<库名>import<函数名> or from <库名> import * :<函数名>(<函数参数>)
第一种方法不回出现函数重名问题,第二种方法则会出现
2.4使用import和as保留字共同完成库引用
import<库名> as <库别名> : <库别名>.<函数名>.(<函数参数>)
给调用的外部库关联一个更短,更适合自己的名字
 

三 . turtle画笔控制函数

四 turtle运动控制函数

五 turtle方向控制函数

六循环语句与range()函数

 
 

6.1循环语句

按照一定次数循环执行一组语句
for <变量> in range(<次数>):
<被循环执行的语句>
  • <变量>表示每次循环的计数,0到<次数>-1
for i in range(5):
 
print(i)
0
1
2
3
4
for i in range(5):
 
print('hello', i)
hello 0
hello 1
hello 2
hello 3
hello 4

6.2产生循环计数序列

range(N)
:产生0到N-1的整数序列,共N个
range(5):0,1,2,3,4
range(M,N)
产生M到N-1的整数序列,共N-M个
range(2,5):2,3,4

七python蟒蛇绘制编码分析

7.1初始化turtle框

 

7.2构造蛇身

7.3构造蛇头

7.4完善蛇头

八 小结

  • 库引用:import,from...import,import...as...
  • penup(),pendown(),pensize(),pencolor()
  • fd(),circle(),seth()
  • 循环语句:for和in,range()函数

代码实践

温度转换

temp = input('请输入对应温度(带上温度符号):')
# print(temp[-1])
# f-string
if temp[-1] in ['F' , 'f']:
    # c = (F-32)/1.8
    # print(int(temp[0:-1]))
    # print(eval(temp[0:-1]))
    C = (eval(temp[0:-1])-32)/1.8
    print(f"华氏度转换为摄氏度为:{C:.2f}C")
elif temp [-1] in ['C' , 'c']:
    # F = C * 1.8 + 32
    F = eval(temp[0:-1]) * 1.8 + 32
    print(f"摄氏度转换为华氏度为:{F:.2f}F")
else:
    print("输入不符合规范")

上面代码运行的效果:以数字34在华氏和摄氏之间转换

python的大蟒蛇

# 导入海归库
import turtle
# 开始画
t = turtle.Pen()
# 定义一个形状为海龟
t.shape('turtle')
# 画的方向先朝上
t.up()
# 回头走
t.fd(-250)
# 然后方向再朝下走
t.down()
# 宽度为25
t.pensize(25)
# 设置角度为负40(海龟的头就会朝右下40度的角走)
t.seth(-40)
# 定义画笔的颜色
t.color('purple')
# 让上面的内容循环四次
for i in range(4):
# 定义圆的半径和角度
    t.circle(40, 80)
# 定义圆的半径和直角,定义两个就是朝一个方向扭动
    t.circle(-40, 80)
# 向左
t.left(40)
# 直走
t.fd(40)
# 定义回头20的半径和180的方向
t.circle(20, 180)
# 然后直行
t.fd(30)
# 保留在显示状态
turtle.mainloop()

上面代码运行的效果

正方形的颜色填充

# 导入海龟库
import turtle
# 开始画
t = turtle.Pen()
# 定义一个形状为海龟
t.shape('turtle')
# 定义填充颜色为黄色
t.fillcolor('yellow')
# 开始填充
t.begin_fill()
# 让循环四次
for i in  range(4):
# 直行走100
    t.forward(100)
# 左转角度90
    t.left(90)
# 填充完毕
t.end_fill()
# 让一直显示
turtle.mainloop()

上面代码运行结果

自定义画一个图形(六边形)

# 导入海龟库
import turtle
# 开始画
t = turtle.Pen()
t0 = turtle.Pen()
# 定义一个形状为海龟
t.shape('turtle')
 
for i in range(6):
    t.forward(100)
    t0.forward(100)
    t.left(60)
    t0.right(60)
 
turtle.mainloop()
 
效果图
 
 
 
 
 
 
 

posted on 2019-10-22 18:17  Everuse  阅读(580)  评论(0编辑  收藏  举报

导航