2.1深入理解Python语言
2.1.1计算机技术的演进
1946-1981 | 计算机系统结构时代 (35年) | 计算能力问题 |
1981-2008 | 网络和视窗时代 (27年) | 交互问题 |
2008-2016 | 复杂信息系统时代 (8年) | 数据问题 |
2016-今 | 人工智能时代(新计算时代) | 人类的问题 |
2.1.2编程语言的多样初心
编程语言有哪些?
不同编程语言的初心:
2018年后的计算环境:
互联网广泛普及、大数据、云计算、物联网、信息安全、人工智能等需求爆发。
2.1.3Python语言的特点
- Python语言是通用语言
- 脚本语言
- 跨平台语言
- 多模型语言
Python特点与优势:
(1)语法简洁:
- C代码量的10%
- 强制可读性
- 较少的底层语法元素
- 多种编程方法
- 支持中文字符
(2)生态高产
- >15万第三方库
- 快速增长的计算生态
- 避免重复造轮子
- 开放共享
- 跨操作系统平台
如何看待Python?
- 最高产的程序设计语言
- 掌握抽象并求解计算问题综合能力的语言
- 了解产业界解决复杂计算问题方法的语言
- 将创新变为现实
2.1.4“超级语言”的诞生
编程语言的种类:
机器语言:代码直接执行,与CPU型号有关
- 一种二进制语言,直接使用二进制代码表达指令。
- 计算机硬件(CPU)可以直接执行,与具体CPU型号有关
- 完成 2+3 功能的机器语言 11010010 00111011
汇编语言:有助记符,汇编器,与CPU型号有关
- 一种将二进制代码直接对应助记符的编程语言 。
- 汇编语言与CPU型号有关,程序不通用,需要汇编器转换
- 完成 2+3 功能的汇编语言 add 2,3,result
高级语言:接近自然语言,编译器,与CPU型号无关
- 更接近自然语言,同时更容易描述计算问题
- 高级语言代码与具体CPU型号无关,编译后运行
- 完成 2+3 功能的高级语言 result = 2 + 3
超级语言:粘性整合已有程序,具备庞大计算生态
- 具有庞大计算生态,可以很容易利用已有代码功能
- 编程思维集成开发
- 完成 2+3 功能的超级语言 result = sum(2,3)
2.2 turtle库的使用(模块1)
2.2.1 turtle库基本介绍
turtle库概述:turtle(海龟)库是turtle绘图体系的Python实现
- turtle绘图体系:1969年诞生,主要用于程序设计入门
- Python语言的标准库之一
- 入门级的图形绘制函数库
标准库:Python计算生态=标准库+第三方库
- 标准库:随解释器直接安装到操作系统中的功能模块
- 第三方库:需要经过安装才能使用的功能模块
- 库Library、包Package、模块Module,统称模块
turtle的原理:
- turtle在窗体正中心,在画布上游走
- 走过的轨迹形成了绘制的图形
- 海龟由程序控制,可以变换颜色、改变宽度等
2.2.2 turtle绘图窗体布局
turtle的绘图窗体:
turtle.setup(width, height, startx, starty)
- setup( )设置窗体大小及位置
- 4个参数中后两个可选
- setup( )不是必须的
turtle.setup(800,400,0,0) turtle.setup(800,400,0,0)
2.2.3 turtle空间坐标体系
绝对坐标:
turtle.goto(x, y)
import turtle
turtle.goto( 100, 100)
turtle.goto( 100,-100)
turtle.goto(-100,-100)
turtle.goto(-100, 100)
turtle.goto(0,0)
2.2.4 turtle角度坐标体系
绝对角度:
turtle.seth(angle)
- seth()改变海龟行进方向
- angle为绝对度数
- seth()只改变方向但不行进
turtle.seth(45) turtle.seth(-135)
海龟角度:
import turtle
turtle.left(45)
turtle.fd(150)
turtle.right(135)
turtle.fd(300)
turtle.left(135)
turtle.fd(150)
2.2.5 RGB色彩体系
RGB色彩模式:由三种颜色构成
- RGB指红蓝绿三个通道的颜色组合
- 覆盖视力所能感知的所有颜色
- RGB每色取值范围0-255整数或0-1小数
常用RGB色彩:
turtle的RGB色彩模式:默认采用小数值 可切换为整数值
turtle.colormode(mode)
- 1.0:RGB小数值模式
- 255:RGB整数值模式
turtle库的使用:
turtle库的海龟绘图法
turtle.setup()调整绘图窗体在电脑屏幕中的布局
画布上以中心为原点的空间坐标系: 绝对坐标&海龟坐标
画布上以空间x轴为0度的角度坐标系: 绝对角度&海龟角度
RGB色彩体系,整数值&小数值,色彩模式切换
2.3 turtle程序语法元素分析
2.4 Python蟒蛇绘制(实例2)
问题分析:用程序绘制一条蛇。
#PythonDraw.py
import turtle #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()
运行效果:
举一反三:
(1)Python语法元素理解:
- 参考框架、逐行分析、逐词理解
(2)程序参数的改变:
- 改变颜色
- 改变长度
- 改变方向
(3)计算问题的扩展
- 绘制圆形、五角星、国旗、机器猫……