慕课课程 python
一、Python基本语法元素
方法论:
- 程序的编写方法:IPO
- 看懂简单的代码
1.1程序设计方法
1.1.1计算机与程序设计
- 功能性
- 可编程性
计算机的发展按照指数方式发展(摩尔定律)
1.1.2编译与解释
静态语言和脚本语言
- 静态语言:使用编译执行的编程语言C/C++,java
程序运行速度更快 翻译 - 脚本语言 使用解释执行的编程语言 Python PHP
维护灵活,跨多个操作平台 同声传译
不同:执行方式不同
1.1.3程序的基本编写方法
IPO
- I Input输入,程序的输入
文件输入、网络输入…输入是一个程序的开始 - P process处理, 程序的主要逻辑
处理方法统称为算法。 - O output 输出,程序的输出
输出是程序展示运算结果的方式
编程解决问题的步骤
1. 分析问题:分析问题的计算部分,**想清楚**
*2. 划分边界:划分问题的功能边界。规划IPO*
3. 设计算法:设计问题的求解算法。关注算法
*4. 编写程序*
*5. 调试测试*
6. 升级维护
1.1.4计算机编程
1.2Python开发环境配置
python的两种编程方式
- 交互式:对每个输入语句即时运行结果,适合语法练习
- 文件式:批量执行一组语句并运行结果,编程的主要方式
1.3.实例1:温度转换
需求分析
两种温度体系的转换
#Tempconvert.py
TempStr=input("请输入带有符号的温度值:")
if TempStr[-1] in ['F','f']:
C=(eval(TempStr[0:-1]) - 32)/1.8
print("转换后的温度是{:.2f})C".format(C))
elif TempStr[-1] in ['C','c']:
F = 1.8*eval(TempStr[0:-1])+32
print("转换后的温度是{:.2f}F".format(F))
else:
print("输入格式错误")
温度转换举一反三
**Python语法元素理解
- 温度转换程序包含很多语法元素
- 理解这十行代码
- 参考框架结构、逐行分析、逐词理解
输入输出的改变 - 温度数值——货币长度转换
1.4Python程序语法元素分析
1.4.1 程序的格式框架:
- 代码高亮:编程的色彩辅助体系,不是语法要求
- 缩进:1. 一行代码开始前的空白区域,表达程序的格式框架
- 是语法的一部分,表达代码间包含和层次关系的唯一手段
- 长度一致 程序内一致即可,一般用4个空格或一个TAB
- 注释 多行注释:三个单引号
1.4.2 命名与保留字
- 变量:用来保存和表述数据的占位符号
- 变量采用标识符来表示,关联标识符的过程叫命名
命名规则:大小写字母、数字、下划线和汉字等字符及组合。
注意事项:大小写敏感,首字符不能是数字,不能与保留字相同 - 保留字 :被编成语言内部定义并保留使用的标识符(33个)
1.4.3数据类型
供计算机程序理解的数据形式
- 字符串:由0个或多个字符组成的有序字符序列(从零开始)
- 字符串由一对单引号或一对双引号表示
- 字符串是字符的有序序列,可以对其中的字符进行索引
- 字符串的序号
- 正向递增序号和反向递减序号
- 字符串的使用
整数、浮点数、列表类型[ , ]
1.4.4 语句与函数
赋值语句:由赋值符号构成的一行代码
分支语句:由判断条件决定程序运行方向的语句
函数:根据输入参数产生不同输出的功能过程(类似数学中的函数)
1.4.5 Python程序的输入与输出
- input()
print()函数的格式化:print(“转换后的温度是{:.2f}F”.format(F))
{}表示槽,后续变量填充到槽中
eval()去掉参数最外侧引号并执行余下语句的函数
1.4.6 温度转换代码分析
#Tempconvert.py
TempStr=input("请输入带有符号的温度值:") #输入的值会被保存在变量TempStr(表达温度的字符串类型的变量)中
if TempStr[-1] in ['F','f']:#if(分支语句)会判断后面的条件。
#TemStr[-1]:用户输入的字符串的最后一个字符。in:判断最后一个字符是不是F或者f(判断最后一个字符是否在列表类型中)
C=(eval(TempStr[0:-1]) - 32)/1.8#使用eval函数对TemStr除去最后一位的其他位进行一个评估运算。输入82F,eval后变为82然后进行运算
print("转换后的温度是{:.2f})C".format(C))#格式化,将产生的变量C输出出来
elif TempStr[-1] in ['C','c']:#
F = 1.8*eval(TempStr[0:-1])+32
print("转换后的温度是{:.2f}F".format(F))
else:
print("输入格式错误")
1.4.7 小结
二、python基本图形绘制
2.2 python蟒蛇问题分析
import turtle
#PythonDraw.py
import turtle
turtle.setup(650, 350, 100, 100)
turtle.penup()
turtle.fd(-250)
turtle.pendown()
turtle.pensize(2)
turtle.pencolor("red")
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.2 turtle库
在这里插入图片描述
2.3 turtle程序语法元素分析
2.3.1 库引用与import
2.3.2画笔控制函数
选位置》
2.3.3 运动控制函数
2.3.4 方向控制函数
2.3.5循环语句与range()函数
print加逗号会留出一个空格
2.3.5蟒蛇绘制实例分析
#PythonDraw.py
import turtle#库引用
turtle.setup(650, 350, 100, 100)#设定窗体。宽650 高350
turtle.penup()#画笔抬起
turtle.fd(-250)#倒退向后250像素
turtle.pendown()#海龟落下
turtle.pensize(2)#画笔宽度25像素
turtle.pencolor("red")#颜色为
turtle.seth(-40)#方向改为绝对-40°方向
#准备工作
for i in range(4):
turtle.circle(40, 80)#走曲线,40为半径,绘制80弧度
turtle.circle(-40, 80)#反向40°为半径
turtle.circle(40, 80/2)
turtle.fd(40)
turtle.circle(16, 180)
turtle.fd(40 * 2/3)
turtle.done()#程序运行之后不会直接退出
练习:名字
#名字
import turtle
turtle.setup(650, 350, 100, 100)
turtle.penup()
turtle.left(90)
turtle.fd(100)
turtle.pendown()
turtle.pensize(2)
turtle.pencolor("red")
turtle.seth(-135)
turtle.fd(40)
turtle.left(135)
turtle.fd(20)
turtle.seth(45)
turtle.fd(10)
turtle.bk(50)
turtle.right(45)
turtle.fd(30)
turtle.penup()
turtle.fd(38)
turtle.left(90)
turtle.fd(55)
turtle.pendown()
turtle.seth(-135)
turtle.fd(40)
turtle.left(135)
turtle.fd(20)
turtle.seth(45)
turtle.fd(10)
turtle.bk(50)
turtle.right(45)
turtle.fd(30)
turtle.penup()
turtle.right(90)
turtle.fd(15)
turtle.pendown()
turtle.left(90)
turtle.bk(70)
turtle.done()