一、逻辑运算符
逻辑运算符对真和假两种布尔值进行运算,运算后返回的结果任然是一个布尔值,python中逻辑运算包括与(and)、或(or)、非(not)。
运算符 含义 用法 结合方向
and 与 op1 and op2 从左到右
or 或 op1 or op2 从左到右
not 非 op1 not op2 从右到左
返回真--- Ture 假--- False
例:
print("手机店打折活动进行中。。。。") strWeek = input("中文输入星期:" ) intTime = int(input("输入小时(0~23):") if (strWeek == "星期二" and (intTime >= 10 and intTime<= 11)) or(strWeek == "星期五" and (intTime >= 14 and intTime<= 15)) print("进行中") else print("对不起,您来晚了")
二、位运算符
位运算符用于二进制数计算,因此,需要执行运算的数据转换为二进制数,然后才能进行运算。python中的位运算符有位与(&)、位或(|)、位异或(^)、位取反(~)、位左移(<<)和位右移(>>).
在位运算中,二进制数均以补码进行计算的,所以正数最高位位0,复数最高位为1.
1、位与运算:两个二进制数对应位同时为1时,则为1,否则为0
2、位或运算:两个二进制数对应位同时为0时,则为0,否则为1
3、位异或运算:两个二进制数对应位同时为0或者同时为1时,则为0,否则为1
4、位取反运算:0改为1,1改为0
5、左移位运算<<:左移n位相当于乘以2的n次幂
6、左移位运算>>:右移n位相当于除以以2的n次幂
例:
"""pwd = input("输入密码:") print("原密码:",pwd) key = input("输入密钥:") password = int(pwd) ^ int(key) print("加密后:",password) print("加密后:",password ^ int(key))""" #左右移位 #左移相当于✖️2 #右移相当于➗2 number = 32 print("左移移位:",number << 1) print("右移移位:",number >> 1)
三、运算符的优先级
运算符的优先级,是指在应用中哪一个运算符先运算,哪一个运算符后运算,与数学中的四则运算一个道理。
python运算符的运算规则是:优先级高的运算先执行,优先级低的后执行,同一优先级的操作按照从左到右的顺序进行。也可以使用小括号的方式优先执行。下列是python语言中常用的运算符优先级,同一行级别相同:
** 幂
~、+、- 取反、正号、负号
*、/、%、// 算数运算符
+、 - 加 减
<<. >> 左移、右移
& 位与运算
^ 位异或运算
| 位或运算
< 、<=、 >、 >= 、!= 、== 比较运算符
注:在编写程序时尽量使用括号“()”来限定运算次序,以免运算次序发生错误
数学运算类内置函数
complex([real[,imag]]) 创建一个复数
divmod(a,b) 输出商和余数
float([x]) 转换为浮点数 如果无参数返回0.0
int([x[,base]]) 转换为整型,base为进制
long([x[,base]]) 将字符转换为长整型