第 2 章 python 程序实例解析
学习目标:
掌握解决计算问题的一般方法。
掌握python语言的基本语法,包括缩进、变量、命名等。
掌握python语言绘制图形的一般方法。
了解python标准库的导入和使用。
2.1 实例1: 温度转换
温度的刻画有两个不同体系:摄氏度(Celsius)和华氏度(Fabrenheit)。两者之间的关系:
C = (F - 32)/ 1.8
F = C *1.8 + 32
其中,C表示摄氏温度,F表示华氏温度。
实例代码:
# e1.1TempConvert.py
TempStr = input("请输入带有温度符号的温度值:")
if TempStr[-1] in ['C', 'c']:
F = eval(TempStr[0:-1]) * 1.8 + 32
print("转换后的温度是{:.2f}F".format(F))
elif TempStr[-1] in ['F', 'f']:
C = (eval(TempStr[0:-1]) - 32) / 1.8
print("转换后的温度是{:.2f}C".format(C))
else:
print("输入格式错误!")
打印
输出结果:
请输入带有温度符号的温度值:25c
转换后的温度是77.00F
请输入带有温度符号的温度值:18f
转换后的温度是-7.78C
>>>
2.2 python 程序语法元素分析
要点: python程序包括:格式框架、注释、变量、表达式、分支语句、循环语句、函数等语法元素。
2.2.1 程序的格式框架
python 语言采用严格的“缩进”来表明程序的格式框架。缩进表达所属关系。分为:单层缩进和多层缩进。
2.2.2 注释
注释是程序员在代码中加入的一行或多行信息,用来对语句、函数、数据结构或方法等进行说明,提升代码可读性。
单行注释以 # 开头,多行注释以 ‘’’(3个单引号)开头和结尾。
2.2.3 命名与保留字
重点:
python语言允许采用大写字母、小写字母、数字、下划线_和汉字等字符及其组合给变量命名,但 首字母不能是数字,中间不能出现空格, 长度没有限制,标志符对大小写敏感。
保留字:
2.2.4 字符串
字符串是字符的序列,可以按照单个字符或字符片段进行索引。字符串包括两种序号体系:正向递增序号和反向递减序号。
>>>TempStr = "110C"
>>>print(TempStr[-1])
C
>>>print(TempStr[0:-1])
110
2.2.5 赋值语句
python语言中,“=” 表示“赋值”,即将等号右侧的计算结果赋给左侧变量,包含等号(=)的语句称为赋值语句。
此外还有一种同步赋值语句,可以同时给多个变量赋值,基本格式如下:
,…, = ,…,
2.2.6 input() 函数
input()函数从控制台获取用户输入,无论用户在控制台输入什么内容,input()函数都以字符串类型返回结果。
2.2.7 分支语句
分支语句是控制程序运行的一类重要语句,它的作用是根据判断条件选择程序执行路径,使用方式如下:
if :
elif:
…
else:
2.2.8 eval() 函数
eval()函数是python语言中一个十分重要的函数,作用是将输入的字符串转变成python语句,并执行该语句。
2.2.9 print()函数
后面常用的函数
2.2.10 循环语句
代码实例:
#e1.2TempConvert.py
TempStr = input("请输入带有符号的温度值:")
while TempStr[-1] not in ['N', 'n']:
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("输入的格式有误!")
TempStr = input("请输入带有符号的温度值:")
条件循环的基本过程如下:
while ():
当条件为真时,执行语句块1语句,当条件为假时,退出循环,执行循环后面的语句块2语句。
2.2.11函数
实例
#TempConvertV3.py
def tempConvert(ValueStr):
if ValueStr[-1] in ['F', 'f']:
C = (eval(ValueStr[0:-1]) - 32)/1.8
print("转换后的温度是{:.2f}C".format(C))
elif ValueStr[-1] in ['C', 'c']:
F = eval(ValueStr[0: -1]) * 1.8 + 32
print("转换后的温度是{:.2f}F".format(F))
else:
print("输入格式错误")
TempStr = input("请输入带有符号的温度值:")
tempConvert(TempStr)
使用 def 保留字定义了一个名为tempConver()的函数,它使用一个参数 ValueStr。将代码封装在这个函数中, 可以调用函数执行函数中的功能。函数是代码编写中最重要的封装方式, 可以辅助代码按照功能划分模块,有利于代码之间进行语句块级别的复用。