【python系列】第一章 Python基本语法元素

*该系列内容来自于:中国大学MOOC(幕客)-python语言程序设计

Python语言程序设计_北京理工大学_中国大学MOOC(慕课)

第一章  Python基本语法元素
方法论:程序的基本编写方法:IPO
实践能力:看懂10行左右简单的Python代码
1.1  程序设计基本方法
1.1.1  计算机与程序设计
1、计算机:
①功能性
②可编程性
2、计算机的发展
①摩尔定律——指数方式
②计算机硬件所依赖的集成电路规模参照摩尔定律发展,因此计算机运行速度也接近几何级数快速增长,也表现为计算机所能高效支撑的各类运算功能不断发展
3、摩尔定律
①单位面积集成电路上可容纳晶体管的数量约每两年翻一番
②CPU/GPU、内存、硬盘、电子产品价格等都遵循摩尔定律
4、程序设计—— 计算机可编程性的表现
5、程序设计语言——程序设计的具体实现方式
①C语言——1972年
②Python——1990
1.1.2  编译和解释—— 编程语言的执行方式
1、源代码与目标代码:
①源代码: 采用某种编程语言编写的计算机程序,人类可读 
      result=2+3
②目标代码:计算机可直接执行,人类不可读(专家除外)
      11010010 00111011
2、编译:将源代码一次性转换成目标代码的过程
源代码——编译器——目标代码
程序输入——程序执行——结果输出
执行编译过程的程序叫做编译器
3、解释:将源代码逐条转换成目标代码同时逐条运行的结果
源代码
程序输入——解释器——结果输出
执行解释过程的程序叫做解释器
4、解释和编译区别:
①编译:一次性翻译,之后不再需要源代码(类似英文翻译)
②解释:每次程序运行时随翻译随执行(同声传译)
5、静态语言和脚本语言
根据执行方式不同,编程语言分为两类:
①静态语言:使用编译执行的编程语言(C/C++、java语言)
②脚本语言:使用解释执行的编程语言(Python语言、JavaScript语言、PHP语言)
6、静态语言和脚本语言区别:
执行方式不同,优势各有不同
①静态语言:编译器一次性生成目标代码,优化更充分
程序运行速度更快
②脚本语言:执行程序是需要源代码,维护更充分
源代码维护灵活、跨多个操作系统平台
7、程序的基本编写方法
①IPO
I input:程序的输入
P process:程序的主要逻辑
O output:程序的输出
②输入:程序的输入
文件输入、网络输入、控制台输入、交互界面输入、内部参数输入等
输入是一个程序的开始
③输出:程序的输出
控制台输出、图形输出、文件输出、网络输出、操作系统内部变量输出等
输出是程序展示运算结果的方式
④处理:是程序对输入数据进行计算产生输出结果的过程
处理方法统称为算法,它是程序最重要的部分
算法是一个程序的灵魂
1.1.3  程序的基本编写方式
1、问题的计算部分
①一个待解决问题中,可以用程序辅助完成的部分
②计算机只能解决计算部分,即问题的计算部分
③一个问题可能有多种角度解释,产生不同的计算部分
④问题的计算部分一般都有输入、处理和输出过程
2、编程解决问题的步骤: 6个步骤
①、分析问题:分析问题的计算部分,想清楚
②、划分边界:划分问题的功能边界,规划IPO
③、设计算法:设计问题的求解算法,关注算法
④、编写程序:编写问题的计算程序,编程序
⑤、调试测试:调试程序使正确运行,运行调试
⑥、升级维护:适应问题的升级维护,更新完善
3、求解问题的精简步骤
①、确定IPO:明确计算部分及功能边界
②、编写程序:将计算求解的设计变成现实
③、调试程序:确保程序按照正常逻辑能够正确运行
1.1.4  计算机编程
1、编程能够训练思维
编程体现了一种抽象交互关系、自动化执行的思维模式
计算思维:区别于(数学)逻辑思维和(物理)实证思维的第三种思维模式
能够促进人类思考,增进观察力和深化对交互关系的理解
2、编程能够增进认识
编程不单纯是求解计算问题
不仅要思考解决方法,还要思考用户体验、执行效率等
能够帮助程序员加深用户行为以及社会和文化知识
3、编程能够带来乐趣
编程能够提供展示自身思想和能力的舞台
让世界增加新的颜色、让自己变得更具、提升心理满足
在信息空间里思考创新、将创新变为现实
4、编程能够提高效率
能够更好地利用计算机解决问题
显著提高工作、生活和学习效率
为理想实现提供一种借助计算机的高效手段
5、编程带来就业机会
程序员是信息时代最重要的工作岗位之一
国内外对程序员岗位的缺口都在百万以上规模
计算机已经渗透各个行业,就业前景十分广阔
6、误区
掌握方法学习编程:
1、掌握编程语言的语法,熟悉基本概念和逻辑
2、结合计算问题思考程序结构,会使用编程套路
3、参考案例多练习多实践,学会举一反三
1.2  Python开发环境配置
1.2.1 python语言概述
1、拥有者PSF    开放开源和发展      蟒蛇   Python3
2、下载版本:3.9.2
1.2.2 python程序编写与运行
1、Python两种编程方式
交互式:对每个输入语句即时运行结果,适合语法练习
文件式:批量执行一组语句并运行结果,编程的主要方式
❤实例1:圆面积的计算
根据半径r计算圆面积
r=25
area=3.1415*r*r
print(area)
print("{:.2f}".format(area))
❤实例2:同切圆绘制
绘制多个同切圆
import turtle
turtle.pensize(2)
turtle.circle(10)
turtle.circle(20)
turtle.circle(40)
turtle.circle(80)
❤实例3:五角星绘制
绘制一个五角星
from turtle import *
color('red','red')
begin_fill()
for i in range(5):
    fd(200)
    rt(144)
end_fill()
done()
1.3  实例1:温度转换
1、温度刻画的两种不同体系
①摄氏度:中国等世界大多数国家使用
以1标准大气压下水的结冰点为0度,沸点为100度,将温度进行等分刻画
②华氏度:美国、英国等国家使用
以1标准大气压下水的结冰点为32度,沸点为212度,将温度进行等分刻画
2、需求分析:两种温度体系的转换
3、问题分析(该题中计算部分的理解和确定)
理解1:直接将温度值进行转换
理解2:将温度信息发布的声音或图像形式进行理解和转换(声音、图像处理)
理解3:监控温度信息发布渠道,实时获取并转换温度值(网络、爬虫、信息处理)
4、【分析问题】采用理解1:直接将温度值进行转换——温度数值需要标明温度体系,即摄氏度或华氏度——转换后也需要给出温度体系
5、【划分边界】输入:带华氏或摄氏标志的温度值
处理:根据温度标志选择适当的温度转换算法
输出:带华氏或摄氏标志的温度值
输入输出格式:
标识放在温度最后,F表示华氏度,C表示摄氏度    56C表示56摄氏度
6、【设计算法】
转换公式:
C=(F-32)/1.8
F=C*1.8+32
7、【举一反三】
❤输入输出的改变:
-温度数值与温度标识之间关系的设计可以改变
-标识改变放在温度数值之前:C82、F28
-标识字符改变为多个字符:82Ce、28F
❤计算问题的拓展:
-温度转换问题是各类转换问题的代表性问题
-货币转换、长度转换、重量转换、面积转换.......
-问题不同,程序代码相似
1.4  Python程序语法元素分析
1、格式框架
❤代码高亮色彩辅助体系,不是语法要求
❤缩进:一行代码开始前的空白领域,表达程序的格式框架
①严格明确:是语法一部分,缩进不正确程序运行错误
②所属关系:表达代码间包含和层次关系的唯一手段
③长度一致:程序内一致即可,一般用4个空格或者1个TAB
❤注释:用于提高代码可读性的辅助性文字,不被执行
①单行注释:以#开头,后面内容为注释
②多行注释:以'''开头和结尾    '''第一行   第二行'''
2、命名与保留字
❤变量:程序中用于保存和表示数据的占位符号
-变量采用标识符(名字)来表示,关联标识符的过程叫做命名
-使用等号(=)向变量赋值或者修改值,=被称为赋值符号
❤命名规则
大小写字母、数字、下划线和汉字等字符及组合
-注意事项:
大小写敏感、首字符不能是数字、不与保留字相同
❤保留字:
-被编程语言内部定义并保留使用的标识符
-有33个保留字(也叫关键字)
if、elif、else、in、
-保留字是编程语言的基本单词,大小写敏感
if是保留字,IF是关键字
and、       elif、      import、  raise、   global
as、          else、    in、          return、nonlocal
assert、    except、is、          try、      True
break、    finally、  lambda、while、  False
class、      for、      not、       with、    None
continue、from、   or、        yield
def、         if、        pass、     del
3、 数据类型
❤数据类型:整数、浮点数、字符串、列表
10,011,101  如何解释?
-二进制:值是十进制157
-十进制数字
-一段文本:10个字符,用逗号隔开
-用逗号隔开的3个数字:
-数据类型:供计算机程序理解的数据形式
-程序设计语言不允许存在语法歧义,需要定义数据的形式 ( 需要给10,011,101关联一种计算机可以理解的格式)
-程序设计语言通过一定方式向计算机表达数据的形式
"123"表示文本字符串123,123则表示数字123
10.011.101
-整数类型:1001101
-字符串类型:“10011101”
-列表类型:[10,011,101]
❤字符串:由0个或多个字符组成的有序字符序列
-字符串由一对单引号或一对双引号表示
-字符串是字符的有序序列,可以对其中的字符进行索引
①字符串的符号:
正向递增序号:0 1 2 3 4 5
反向递减序号:-1 -2 -3 -4 -5
②字符串的使用:
使用[ ]获取字符串中一个或多个字符
-【索引】:返回字符串中单个字符 TempStr[-1]  
-【切片】: 返回字符串中一段字符子串 TempStr[0:-1] 第一个到倒数第二个(不包含最后一个)
❤数字类型:整数和浮点数(包含正数和负数)
整数:数学中的整数
浮点数:数学中的实 数,带有小数部分
❤列表类型:由0个或多个数据组成的有序序列
-列表使用[ ]表示,采用逗号(,)分隔各元素
['F','f']表示两个元素 'F'和'f'
-使用保留字 in 判断一个元素是否在列表中
TempStr[-1] in ['C','c'] 判断前者是否与列表中某个元素相同
4、语句与函数
❤语句
【赋值语句】:由赋值符号构成的一行代码
-用来给变量赋予新的数据值
-赋值语句右侧的数据类型同时作用于变量
TempStr=input("") #input()返回一个字符串,TempStr也是字符串
【分支语句】由判断条件决定程序运行方向的语句
-使用保留字if elif else构成条件判断的分支结构
-最后有冒号,语法一部分
-冒号及后续缩进表示后续语句与条件的所属关系
❤函数
-根据输入参数产生不同输出的功能过程
-类似数学中的函数,y=f(x)
-函数采用<函数名>(<参数>)方式使用
eval(TempStr[0:-1])  #TempStr[0:-1]是参数
5、Python程序的输入输出
❤Python程序的输入
-input()从控制台获得用户输入的函数
-input()函数的使用格式:
<变量>=input(<提示信息字符串>)
- 用户输入的信息以字符串类型保存在<变量>中
TempStr=input("请输入")#TempStr保存用户输入的信息
❤输出函数:print()
-print( ) 以字符形式向控制台输出结果的函数
-基本使用格式:
print(<拟输出字符串或字符串变量>)
- 字符串类型的一对引号仅在程序内部使用,输出无引号
print(“输入格式错误”)  #向控制台输出 输入格式错误
-print()函数的格式化:
print("转换后的温度是{:.2f}C").format(C))
{ }表示槽,后续变量填充到槽中
{ :.2f }表示将变量C填充到这个位置时取小数点后2位
如果C的值是123.456789,则输出结果为:
转换后的温度是123.45
❤评估函数:eval()函数
-去掉参数最外层引号并执行余下语句的函数
-基本使用格式:
eval(<字符串或字符串变量>)——字符串类型转换为数字类型
>>>eval("1")
1
>>>eval("1+2")
3
>>>eval('"1+2"')
'1+2'
>>>eval('print("hello")')
hello
eval(TempStr[0:-1])
如果TempStr[0:-1]的值是“12.3”,输出是:
12.3
6、代码:
#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("输入格式错误")
-缩进、注释、命名、变量、保留字
-数据类型、字符串、整数、浮点数、列表
-赋值语句、分支语句、函数
-input()、print()、print()格式化、eval()

猜你喜欢

转载自blog.csdn.net/weixin_46509892/article/details/128471856