提示:本文章所有内容均摘自mooc的Python编程基础。
1.占位运算符
运算符类似于C语言中的printf函数中使用的占位符,在字符串中可以给出一些占位符来表示不同类型的数据,而实际的数据值在字符串之外给出。
占位符 | 描述 |
%d | 有符号的十进制整数 |
%f | 有符号浮点型十进制数 |
%s | 字符串 |
例如:
s1='%s上次数学成绩%d,本次%d,成绩提高%f'%('小明',85,90,5/85) 输出结果:小明上次数学成绩为85,本次90,成绩提高0.058824 s2='%5s上次数学成绩%5d,本次%5d,成绩提高%.2f'%('小明',85,90,5/85) 输出结果: 小明上次数学成绩为 85,本次 90,成绩提高0.06 #自动补上空格,使长度为五个字符。'.2'为只保留两位小数 #还可以指定填充的字符是什么,例如 s1='%5s上次数学成绩%05d,本次%05d,成绩提高%08.2f'%('小明',85,90,5/85) 输出结果: 小明上次数学成绩为00085,本次00090,成绩提高00000.06 #08.2f 总共占八位,小数点一位,保留两位小数,前面补零
提示:由于%为占位符的前缀字符,因此对于有占位符的字符串,表示一个%时需要两个%号连用来表示一个%号,例如:
print('优秀比例为%。2f%%,良好比例为%.2f%%。'%(5.2,20.35)) 输出结果为:优秀比例为5.20%,良好比例为20.35%。
2.算术运算符
运算符 | 使用方法 | 功能描述 |
+(加) | x+y | x与y相加 |
-(减) | x-y | x与y相减 |
*(乘) | x*y | x与y相乘 |
/(除) | x/y | x除以y |
//(整除) | x//y | x整除y,返回 x/y的整数部分 |
%(模) | x%y | x整除y的余数 |
-(负号) | -x | x的负数 |
+(正号) | +x | x |
**(乘方) | x**y | x的y次幂 |
3.赋值运算符
算术运算符(?)加个等号:x?=y 即为 x=x?y
4.比较运算符
!=(不等于),>=,<=,>,< 如果为真,返回True,如果为假,返回False。
5.逻辑运算符
运算符 | 使用方法 | 功能描述 |
and | x and y | 与 |
or | x or y | 或 |
not | not x | 非 |
6.位运算符
运算符 | 使用方法 | 功能描述 |
&(按位与) | x&y | 如果y和x对应的位都为1,则结果中 该位为1;否则,该位为0 |
|(按位或) | x|y | 如果y和x对应的位都为0,则结果中 该位为0;否则,该位为1 |
^(按位异或) | x^y | 如果y和x对应的位不同,则结果中 该位为1;否则,该位为0 |
<<(左移位) | y<<x | 将y左移x位(右侧补0) |
>>(右移位) | y>>x | 将y右移x位(左侧补0) |
~(按位取反) | ~x | 如果x的某位为1,则结果中该位为0 否则,该位为1 |
7.身份运算符
用处:用于比较两个对象是否对应同样的存储单元。
运算符 | 使用方法 | 功能描述 |
is | x is y | 如果x和y对应同样的存储单元 则返回True;否则返回False |
is not | x is not y | 如果x和y不对应同样的存储单元 则返回True;否则返回False |
提示:如果赋值运算符“=”的右操作数也是一个变量,则赋值运算后左操作数变量和右操作数变量会对应同样的存储单元。
8.成员运算符
用处:成员运算用于判断一个可迭代对象(序列、集合或者字典)中是否包含某个元素
运算符 | 使用方法 | 功能描述 |
in | x in y | 如果x是可迭代对象y的一个元素,则返回True;否则,返回False |
not in | x not in y | 如果x不是可迭代对象y的一个元素,则返回True;否则,返回False |
注:使用成员运算符判断一个数据是否是字典中的元素,实际上就是判断该数据是否是字典中某个元素的的键。例如:
x,y=15,['abc',15,True] print(x in y) #输出“True” x,y='one',{'one':1,'two':2,'three':3} print(x in y) #输出“True” print(1 in y) #输出“False”
9.序列运算符
运算符 | 使用方法 | 功能描述 |
+(拼接) | x+y | 将序列x和序列y中的元素连接,生成一个新的序列 |
*(重复) | x*n | 将序列x中的元素重复n次,生成一个新的序列 |
10.运算符优先级
** (乘方)> ~、+、- (按位取反,正号,负号)> *、/、//、%(乘/序列重复、除、整除、模) > +、-(加/序列连接、减)> >>、<<(右移位、左移位)> & (按位与)> ^(按位异或)> |(按位或)>比较运算符、身份运算符、成员运算符 > 赋值运算符 > not(逻辑非)> and(逻辑与)> or(逻辑或)