一轮复习专题二:Python语法基础
示例代码:温度转换
1.编程环境(IDLE)
Python代码编程环境有很多,但安装Python时自带的IDLE已经可以应付大多数的代码编程需求。在IDLE中,代码的不同成分会被用不同的颜色标识出来,这个功能被称之为“代码高亮”。不同编程环境中代码高亮的显示方式不一样
2.编译和解释
编译:将源代码一次性转为机器代码,而后将不在需要源代码。(C/C++,Java)
解释:将源代码逐条转为机器代码同时逐条运行,每次都需要重新从源代码执行(Python,PHP)
一、程序组成分析
1.注释:在代码中添加注释,可以对代码功能进行解释说明。注释在代码运行过程中不参与执行。Python中有两种注释方式:1.用’#’开头的单行注释;2.用’ ‘’’ ‘(三引号)开头和结尾的多行注释,这种注释本质是创建了一个多行字符串。
2.变量和赋值:程序中有些数据是未知或是可变的,为了零活的使用这些数据,可以使用变量进行存储。示例第二行就创建了一个名为TempStr的变量,用于存储外部输入值。
(1)变量命名时需要遵循一些基本规则:1.变量名只能由数字,字母和下划线(英文)三种字符构成;2.变量名不能用数字开头;3.变量名区分大小写;4.变量名不能和保留字相同;
这里特别需要指出两点:
1.Python变量名支持中文字符,但考虑兼容性一般不建议使用;
2.Python共有35个保留字,这些不可以被作为变量名使用。
(2)赋值语句:变量名=值;变量名=表达式;a,b=b,a
(3)赋值运算符:”=”、”+=”、”-=”、”*=”、”/=”、”%=”等
3.数据类型:Python共有四种数据类型:整型、浮点型(实型)、字符串型和布尔型
(1)整数类型(int):Python不带小数点的值都是整数类型。例:10
除此之外整数类型可以用多种进制表示,二进制前缀0b或0B(10=0b1010);八进制0o或0O(10=0o12);十六进制前缀0x或0X(10=0xA)
(2)浮点类型(float):带小数点的数值类型。例10.0、1.0e1
(3)字符串型(str):字符串可以用单引号、双引号、三引号表示。
(4)布尔类型(Bool):只有True和False两个值。
4.运算符和优先级
运算符 功能和作用 示例 优先级
( ) 小括号 略 0(最高)
** 幂运算 略 2
~ 按位取反 ~n = -n-1 1
*、/、//、% 乘,除,整除,取余 整除:不大于除法结果的最大整数;取余:x%y=x-y(x//y) 3
+、- 加法、减法 略 4
& 按位与 0b1111&0b1010=0b1010 5
^ 按位异或 0b1111^0b1010=0b0101 6
| 按位或 0b1111|0b1010=0b1111 7
<、>、==、<=、>=、!= 关系运算符 结果为布尔类型 8
in 、not in 存在性判断 结果为布尔类型 9
not 非 结果为布尔类型 10
and 与 结果为布尔类型 11
or 或 结果为布尔类型 12
5.表达式:变量、常量、运算符按一定规则组合构成的式子
(1)表达式中存在多种运算符时,按优先级运算,优先级相同则从左到右
(2)Python中认为”0”(数值0)、””(空字符串)和False等价,非零数和非空字符串和True等价
(3)字符串比较时,比较的是两者的ASCII码值,从左到右逐位比较。例”123”<”23”=True
(4)数值类型的运算结果保留更精确的值。例1+2.0=3.0
6.常用内建函数
(1)input([prompt]):获取用户输入,函数的参数为输出提示字符,返回值为字符串类型
(2)int(object[,base]):将数值字符串转为整数类型,base声明进制类型,默认base=10。返回值为十进制整数类型。例int(“FF”,16)=255
(3)float(object):将数值字符串转为浮点数类型
(4)abs(x):返回x的绝对值
(5)len(seq):返回列表或字符串的长度,整数类型
(6)str(x):将x转为字符串类型
(7)chr(x):x为ASCII码值,返回x对应的字符
(8)str(x):x为字符串,返回x对应的ACSII码值,整数类型
(9)round(x[,n]):对x四舍五入,保留n位小数。round(6,-1)=10
(10)max(),min():返回列表中的最大值和最小值
(11)print():输出内容到控制台。当参数只有一个,会自动将非字符类型转为字符类型后输出。当参数有多个,可以用逗号连接后转换位字符串输出。例:print(10);print(10,”全”,10,”美”)
(12)eval():删除字符两边的双引号。
7.格式化字符串
1)”%”
例1:print(‘转换后的温度是:%d℃’%22.5)
运行结果:转换后的温度是:22℃
注:%d为整数,%f为实数,%s为字符串
例2:print("转换后的温度%.2f℃,湿度%.2f"%(22.345,5.677))
运行结果:转换后的温度22.34℃,湿度5.67f
注:”.2”表示小数点后保留两位
例3:print(“%40s”%”今天的温度是十摄氏度”)
运行结果:' 今天的温度是十摄氏度'
注:”40”表示占位宽度为40且默认右对齐
2)format方法
例1:print(“圆周率可以近似为:{}".format(3.1415926))
运行结果:”圆周率可以近似为:3.1415926”
注:format方法以{}为占位符
例2:print("转换后的温度{:.2f}℃,湿度{:.2f}".format(23.456,5.678))
运行结果:"转换后的温度23.45℃,湿度5.67"
例3:print("转换后的温度{1:5.2f}℃,湿度{0:-^20.2f}".format(23.456,,5.678))
运行结果:'转换后的温度 5.68℃,湿度-------23.46--------'
注:冒号前为参数序号,故两个值的替换位置变化;根据对应规则”-”为填充字符,”^”为居中对齐,”20”为替换槽宽度。
7.字符串类型(str)
(1)字符串一旦创建就无法更改
(2)字符串的索引方式有正负两种
(3)字符串切片:字符串名[start:stop:step],结果含头不含尾。step可以为负
(4)常用字符串操作方法
s.upper() #全部小写转大写
s.lower() #全部大写转小写
s.split(sep) #根据sep分割字符串s
s.find(y) #返回y第一次出现在s中的索引值,若未出现则为-1
s.replace(old,new[,max]) #将old用new替换,max为最大替换次数。
s.count(sub) #统计sub在s中出现的次数
s.join(iter) #用s对iter做分隔符
注意:由于字符串是不可变对象,故以上方法不会改变s的值,只是将改变后的结果进行返回。
8.列表类型(list)
(1)列表类型为可变对象,列表中的每个元素数据类型可以相同也可以不同,甚至可以嵌套列表类型
(2)列表的访问和切片和字符串基本相同
(3)列表的常用操作方法
l.append(x) #在列表的最后添加一个元素x
l.clear() #清空列表s中的所有元素
l.insert(i,x) #在s的第i位置增加元素x
l.pop(i) #将s第i 位置的元素删除
l.remove(x) #将列表中第一次出现的x字符删除
l.sort(reverse) #对序列排序 reverse=True(降序)/False(升序,默认)
l.reverse() #将s的内容反转
注意:以上方法会直接改变列表l的值。
9.字典类型(dic) 例:d = {"姓名":"小明","年龄":13,"性别":"男"}
1.字典类型的特点是用花括号将各种元素放在一起,字典的每个值都由两部分组成:"键":"值",整个合起来叫“键值对”。
2.字典的值只能通过“键”索引,因为字典内部元素是无序排列的,没有索引值的概念。
3.字典添加值、修改值、删除值
修改:d["性别"] = "女" 添加:d["国籍"] = "中国" 删除:del d["性别"]
4.可以用d.key() 或 d.value() 单独输出字典的键和值
10.分支结构
if <判断条件>:
语句块1
elif <判断条件>:
语句块2
else:
语句块3
(1)Python用代码缩进表示代码间的包含关系,同一级别代码缩进相同
(2)当<判断条件>为True才执行对应分支语句块
(3)elif 和 else 并非必须,且当前面有条件(if)满足后,后面的判断(elif)会直接跳过,不执行。
例:
if 10>5:
print(10)
elif 20>10:
print(20)
运行结果:10
11.循环语句
for <循环变量> in <循环对象>:
语句块
(1)for循环是“有限次循环”,<循环对象>可以是字符串、列表,也可以是range()函数。
(2)range(start,stop,step)格式和字符串或列表切片类似。
while <判断语句>:
语句块
(3)while的判断语句不当,可能会造成“无限循环”。当<判断语句>结果为Ture运行循环,为False退出循环。
(4)break:结束并退出当前层循环
(5)continue:结束当前次循环,进入下一次循环
12.自定义函数
def <函数名>(<参数1>,<参数2>...):
语句块
[return [返回值]]
(1)函数命名规则同变量命名规则
(2)函数参数可以设置默认值:<参数3>=<默认值>
(3)return 语句用于返还函数处理结果,并且结束函数运行
(4)函数内部变量为局部变量,当需要使用全局变量时需要用global声明
13.第三方库的使用
1.import <库名>
2.import <库名> as <重命名>
3.from <库名> import <函数名>
4.from <库名> import *