一、深入了解Python语言
1.编程语言的发展:(1)机器语言:代码直接执行与CPU型号有关;(2)汇编语言:有助记符,汇编器,与CPU型号有关;(3)高级语言:接近人类语言,编译器,与CPU型号无关;(4)超级语言:具有强大的计算生态,集成开发。
Python是目前唯一一种超级语言。
2.Python特性:简洁性、通用性、生态性。
二、Python基本图形绘制——turtle库的使用
1.turtle库概述:海龟库是turtle绘图体系的Python实现,turtle库是Python的标准库之一,也是入门级的绘图库。
Python库=标准库+第三方库 标准库是随解释器直接安装到操作系统中的功能模块;第三方库是需要经过安装才能使用的功能模块。
2.turtle绘图窗体布局
(1)turtle的绘图窗体是一个画布空间,最小单位是像素。
(2)turtle.setup(width,height,startx,starty)函数用来设置启动窗体的大小和位置。
(3)在绘制基本图形的过程中setup()函数并不是必须的。
(4)若函数中只有两个参数,例如:setup(800,400),则窗体宽800,高400,窗体位置默认在屏幕中心。
3.turtle的空间坐标体系(绝对坐标、海龟坐标)
(1)绝对坐标:
turtle.goto(x,y)函数是指让海龟到达点(x,y)。
(2)海龟坐标:
turtle.fd(d)函数是指让海龟往正前方向进行。
turtle.bk(d)函数是指让海龟往反方向进行。
turtle.circle(r,range)函数是指让海龟以当前位置左侧的某一个点为圆心,进行曲线运动。
4.turtle的角度坐标体系
绝对角度:
turtle.seth(angle)函数改变当前海龟的行进角度,seth函数只改变行进方向但不行进
海龟角度:
turtle.right(angle)函数让海龟向右旋转一定角度改变运行方向
turtle.left(angle)函数让海龟向左旋转一定角度改变运行方向
5.RGB色彩体系
RGB是指红绿蓝这三种颜色通道并由这三种颜色进行的组合,能覆盖视力所感知的所有色彩,每种颜色的取值范围是0-255之间的所有整数或者0-1之间所有的小数。
turtle库默认使用RGB的小数值来表示颜色
turtle.colormode(1.0):RGB小数值模式;turtle.colormode(255):RGB整数值模式
常用的RGB色彩:
三、turtle语法元素分析
1.库引用与import
库引用是扩充Python程序功能的一种方式,使用import保留字完成库引用。
import的第一种使用方式:采用<库名>.<函数名>(<函数参数>)编码风格。
import的第二种使用方式:from<库名>import<函数名>或者是from<库名>import* 如下图,对于turtle库中的已有函数直接使用函数名即可,因为import的第二种使用方式会有函数名重名问题,所以第二种使用方式有弊端。
import的第三种使用方式:import<库名>as<库别名>,<库别名>.<函数名>,库别名是给调用的库关联一个更短、更适合自己的名字,可使代码更简洁,如下图:
2.turtle画笔控制函数
(1)turtle.penup() 别名turtle.pu() ,抬起画笔,相当于海龟在飞行,海龟运行的轨迹不在画布上形成图案。
(2)turtle.pendown() 别名turtle.pd(),落下画笔,相当于海龟在爬行,海龟运行的轨迹在画布上形成图案。
(3)turtle.pensize(参数) 表明turtle.width(参数),用于设置画笔宽度,直至下次画笔设置之前,画笔设置一直有效。
(4)turtle.pencolor(参数) 修改画笔颜色的函数,参数可以有三种形式:(1)参数为字符串:turtle.pencolor("purple") (2)参数为RGB的小数值:turtle.pencolor(0.63,0.13,0.94) (3)参数为RGB的元组值:turtle.pencolor((0.63,0.13,0.94))
3.turtle运动控制函数
运动控制函数可以控制海龟的前进方向,即可以控制海龟走直线或者曲线。
(1)turtle.forward(参数) 别名turtle.fd(参数),向前行进,相当于海龟走直线,参数是行进距离,单位是像素,参数可以为负,为负数时海龟倒退。
(2)turtle.circle(r,extend) 有两个参数,根据半径r绘制一个extend角度的弧形,默认情况下,圆心位于海龟左侧r距离的位置上,若r为负数,则圆心位于海龟右侧。
4.turtle方向控制函数
控制海龟面对方向,包括绝对角度和海龟角度,方向控制函数只改变海龟的运动方向,并不会让海龟行动。
绝对角度:
(1)turtle.setheading(angle) 别名turtle.seth(angle),将海龟的角度变成绝对坐标系中的angle角度
海龟角度:
(1)turtle.right(angle)函数让海龟向右旋转一定角度改变运行方向
(2)turtle.left(angle)函数让海龟向左旋转一定角度改变运行方向
5.基本循环语句
for<变量>in range(<函数名>)
<被循环执行的语句>
range函数:产生循环计数序列的函数,有两种用法:range(N)产生从0到N-1的整数序列,共N个;range(M,N)产生从M到N-1的整数序列,共N-M个。
6.“Python蟒蛇绘制代码分析”
1 import turtle 引入turtle库
2 turtle.setup(650,350,200,200) 设置了绘图窗体,窗体宽650像素,高350像素,位置的左上角的坐标是(200,,200)
3 turtle.penup() 将画笔抬起
4 turtle.fd(-250) 海龟倒退行进250个像素
5 turtle.pendown() 海龟落下
6 turtle.pensize(25) 将画笔宽度设置为25个像素
7 turtle.pencolor(purple) 将画笔颜色设置为紫色
8 turtle.seth(-40) 将海龟的方向改为绝对负40度方向
9 for i in range(4): 共循环四次
10 turtle.circle(40,80)
11 turtle.circle(-40,80)
12 turtle.circle(40,80/2)
13 turtle.fd(40) 海龟前进40个像素
14 turtle.circle(16,180) 绘制一个半圆
15 turtle.fd(40*2/3) 海龟前进40*2/3个像素的距离
16 turtle.done() 作用:程序运行结束之后,不会自动退出,需要手动关闭窗口
1-5行相当于将海龟原点移动到了画布的左侧的一个位置上
9-11行是循环部分,控制海龟进行循环的曲线运动
程序运行结果:
2019-02-16