嵩天老师Python(2)基本图形绘制

Ward Lv5

深入理解Python语言

  • Python语言是通用语言
  • Python语言是脚本语言
  • Python语言是开源语言
  • Python语言是跨平台语言
  • Python语言是多模型语言

实例: Python蟒蛇绘制

问题分析

  • 用程序绘制一条蟒蛇
  • 设计蟒蛇的基本形状

实例编写

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#PythonDraw.py
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()

图片展示

举一反三

  • 程序参数的改变
    • Python蟒蛇的颜色:黑色、白色、七彩色…
    • Python蟒蛇的长度:1节、3节、10节…
    • Python蟒蛇的方向:向左走、斜着走…
  • 计算问题的扩展
    • Python蟒蛇绘制问题是各类图像绘制问题的代表
    • 圆形绘制、五角星绘制、国旗绘制、机器猫绘制…
    • 掌握绘制一条线的方法,就可以绘制整个世界

turtle库的使用

turtle库基本介绍

turtle(海龟)库是turtle绘图体系的Python实现

  • turtle绘图体系:1969年诞生,主要用于程序设计入门
  • Python语言的标准库之一
  • 入门级的图形绘制函数库

标准库

Python计算生态 = 标准库 + 第三方库

  • 标准库:随解释器直接安装到操作系统中的功能模块
  • 第三方库:需要经过安装才能使用的功能模块
  • 库Library、包Package、模块Module,统称模块

turtle的原理

turtle(海龟)是一种真实的存在

  • 有一只海龟,其实在窗体正中心,在画布上游走
  • 走过的轨迹形成了绘制的图形
  • 海龟由程序控制,可以变换颜色、改变宽度等

turtle绘图窗体

1
turtle.setup(width, height, startx, starty)
  • setup()设置窗体大小及位置
  • 4个参数中后两个可选
  • setup()不是必须的

RGB色彩模式

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

常用RGB色彩

英文名称 RGB整数值 RGB小数值 中文名称
white 255, 255, 255 1, 1, 1 白色
yellow 255, 255, 0 1, 1, 0 黄色
magenta 255, 0, 255 1, 0, 1 洋红
cyan 0, 255, 255 0, 1, 1 青色
blue 0, 0, 255 0, 0, 1 蓝色
black 0, 0, 0 0, 0, 0 黑色
seashell 255, 245, 238 1, 0.96, 0.93 海贝色
gold 255, 215, 0 1, 0.84, 0 金色
pink 255, 192, 203 1, 0.75, 0.80 粉红色
brown 165, 42, 42 0.65, 0.16, 0.16 棕色
purple 160, 32, 240 0.63, 0.13, 0.94 紫色
tomato 255, 99, 71 1, 0.39, 0.28 番茄色
1
turtle.colormode(mode)

turtle程序语法元素分析

库引用与import

库引用

扩充Python程序功能的方式,使用import保留字完成,采用.()编码风格

1
2
import <库名> 
<库名>.<函数名>(<函数参数>)

import更多用法

  1. 使用from和import保留字共同完成
1
2
3
from <库名> import <函数名> 
from <库名> import *
<函数名>(<函数参数>)
  1. 使用import和as保留字共同完成
1
2
import <库名> as <库别名> 
<库别名>.<函数名>(<函数参数>)

turtle画笔控制函数

  • turtle.penup() 别名 turtle.pu()
    抬起画笔,海龟在飞行
  • turtle.pendown() 别名 turtle.pd()
    落下画笔,海龟在爬行
  • turtle.pensize(width) 别名 turtle.width(width)
    画笔宽度,海龟的腰围
  • turtle.pencolor(color) color为颜色字符串或r,g,b值
    画笔颜色,海龟在涂装
    • 颜色字符串 :turtle.pencolor("purple")
    • RGB的小数值:turtle.pencolor(0.63, 0.13, 0.94)
    • RGB的元组值:turtle.pencolor((0.63,0.13,0.94))

turtle运动控制函数

  • turtle.forward(d) 别名 turtle.fd(d)
    向前行进,海龟走直线
  • d: 行进距离,可以为负数
  • turtle.circle(r, extent=None)
    根据半径r绘制extent角度的弧形
  • r: 默认圆心在海龟左侧r距离的位置
  • extent: 绘制角度,默认是360度整圆

turtle方向控制函数

  • turtle.setheading(angle) 别名 turtle.seth(angle)
    改变行进方向,海龟走角度
  • angle: 行进方向的绝对角度
  • turtle.left(angle) 海龟向左转
  • turtle.right(angle) 海龟向右转
  • angle: 在海龟当前行进方向上旋转的角度

循环语句与range()函数

循环语句

按照一定次数循环执行一组语句

1
2
3
4
for <变量> in range(<次数>):
<被循环执行的语句>

# <变量>表示每次循环的计数,0到<次数>-1

range()函数

产生循环计数序列

  • range(N)
    产生 0 到 N-1的整数序列,共N个
  • range(M,N)
    产生 M 到 N-1的整数序列,共N-M个
  • 标题: 嵩天老师Python(2)基本图形绘制
  • 作者: Ward
  • 创建于 : 2019-04-15 10:47:37
  • 更新于 : 2020-11-24 23:31:37
  • 链接: https://wangjiaxi.github.io/2019/04/15/嵩天老师Python(2)基本图形绘制/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。