目录
一、了解Python语言
- Python可用于快速开发以实现自动化的运维和测试,在数据分析、科学计算和网络服务方面提供强大的开发框架。
- Python源代码以.py作为扩展名
- Python的语言特点:1语法简洁 2可跨平台运行(脚本语言特性)3粘性扩展(能够整合各类程序代码)4开源 (源代码完全开放)5模式多样(python语法面向过程和对象)
- 编译:将源代码转换为目标代码(一次性的翻译) 解释:将源代码逐条转换成目标代码并同时逐条运行目标代码的过程(不是一次性的翻译)
二、Python语法元素分析(以温度转换为例)
1、程序格式框架
缩进:用来表示代码之间的包含的层次关系(即所属关系),分为单层缩进和多层缩进,目的是增强程序的可读性,通过”Tab键“或多个空格(通常为4个)实现
2、注释
注释:用以说明(标明作者和版权/解释代码用途/辅助程序调试),不被程序执行。分为单行注释和多行注释,单行注释以#开头(可从行的中间开始),多行注释以'''开头结尾
#单行注释
print() #从行的中间开始的单行注释
'''
print() 此行的print属于注释,不被执行
'''
3、命名与保留字
命名:用标识符给变量命名(自定义命名,标识符就是合法的名字)。命名采用大小写字母、数字、下划线、汉字(长度无限制)。但是!!命名首字符不能是数字,中间不可空格。
注:标识符对大小写敏感
Money=()
money=() #属于不同的变量
保留字:已被程序内部定义的标识符,一般用于构成程序整体框架。
注:保留字对大小写敏感
for #保留字
For #不是保留字
4、字符串
字符串:用" "或' '括起来的字符(可理解为有序列/排序的字符)
字符串可以依据单个字符或字符片段进行索引。[N:M]表示从N到M(但不包含M)的字符片段
'HELLO'[0]
'H' #索引到字符的开头
'HELLO'[-]
'O' #索引到字符的结尾
5、基本语句
(1)赋值语句
"="表示赋值
i=0 #将0赋值给i
i=i+1 #将i+1的运算结果赋值给i
x,y=0,0 #对x,y同步赋值
(2)分支语句
用于判断条件选择路径,如if,elif,else等(这里就是前面讲的利用缩进表示所述内容的结构)
A=int(input()) #int(input())表示输入的数据会被化为整型(十进制的表示),int省略则运行错误
if A==0: #注意=为赋值符号,==为数学中的等号
print('True')
elif A>0: #是冒号不是分号!
print('True')
else:
print('False')
(3)循环语句
以条件循环中的while为例:
#计算1-100累加之后的结果
sum=i=0
while i<=100: #循环控制条件
sum=sum+i
i+=1 #等价于i=i+1
print(sum)
'''
初始i被赋值为0,sum此时也为0。控制台输入i=1(满足循环控制条件),sum+1赋值给新的sum,同时i+1(也就是1+1的结果2)被赋值给新的i(也满足循环控制条件,进行新一轮循环)
'''
6、基本函数(部分)
(1)eval()函数
eval(<字符串>)
- 将输入的字符串转为Python语句(面向过程的语句)
- 接受运行一个字符串的表达式,并返回表达式的结果值
x=1
eval("x+1") #引号不可省略,"x+1"表示被执行的字符串
2 #输出结果不带引号,可以理解为:x被赋值为数值1,执行中eval将"x+1"这一字符串转变为数字(Python内部可进行数学运算的数值,即面向过程的Python语句)
eval(input(<输入字符串>)
程序通常会对这个输入的数值进行运算(或与其它数字比较)
value=eval(input("请输入要计算的数值:"))
请输入要计算的数值为:5
print(value*2)
10
(2)print()函数
print()与format()函数常表示:将输出变量整理成期望输出的格式。
三、温度转换实例(详细分析)
#TempConvert.py #注释,不被执行
TempStr=input("请输入带有符号的温度值:") #Tempstr即为命名
if TempStr[-1] in ['F','f']: #TempStr[-1]表示输入数值的最后一位(就是符号),判断符号是否为F/f,如果是就执行下一行的语句。每个条件后都必须加冒号:表示满足条件时被执行的语句,
C=(eval(TempStr[0:-1])-32)/1.8 #[0:-1]截取开头到结尾但不包含结尾的字符片段,如'28F'截取的片段为'28',eval将字符串转变为数字,方便进行python内部的运算
print("转换后的温度是{:.2f}C".format(C)) #{:.2f}表示保留两位小数
elif TempStr[-1] in ['C','c']:
F=1.8*eval(TempStr[0:-1])+32
print("转换后的温度是{:.2f}F".format(F))
else:
print("输入格式错误")
举一反三:
题目:“人民币和美元是世界上通用的两种货币之一,写一个程序进行货币间币值转换,其中:
人民币和美元间汇率固定为:1 美元 = 6.78 人民币
。
程序可以接受人民币或美元输入,转换为美元或人民币输出。人民币采用 RMB
表示,美元 USD
表示,符号和数值之间没有空格。”
#MoneyConvert.py Money=input() if Money[:3] in ['RMB']: USD=eval(Money[3:])/6.78 print("USD{:.2f}".format(USD)) elif Money[:3] in ['USD']: RMB=eval(Money[3:])*6.78 print("RMB{:.2f}".format(RMB)) else: print()