运算符
算数运算符
# + - * /
# // 取整除, % 取余, ** 指数
# () 提升运算符优先级
# 字符串支持加法和乘法运算符:
# 加法:用于多个字符串类型的拼接 str1 + str2
# 数字和字符串之间不可以做加法拼接
# 乘法:将一个字符串重复多次 str1 * 2
赋值运算符
# =
# 连接变量可传递赋值
a = b = c = d = 'hello'
# 可拆包
m, n = 3, 5
# 此时x为一个元组
x = 'hello', 'good', 'yes'
# *表示可变长度
*o, p, q = 1,2,3,4,5,6 # o=[1,2,3,4], p=5, q=6
o, *p, q = 1,2,3,4,5,6 # o=1, p=[2,3,4,5], q=6
o, p, *q = 1,2,3,4,5,6 # o=1, p=2, q=[3,4,5,6]
比较运算符
# 大于:>,小于:<
# 大于等于:>=, 小于等于:<=
# 不等于:!=或<> 等于:== <>python3不支持
# 在字符串中使用比较运算符,会根据各个字符的编码值逐一进行比较
逻辑运算符
# 与或非:and or not
# 逻辑运算符连接条件,一个条件符合则不再做后续判断:
# and:遇到false停止, or:遇到true停止
# 逻辑运算符的短路和取值
4 > 3 and print('hello') # 打印
4 < 3 and print('word') # 不打印;逻辑与运算的短路问题
# 逻辑运算的结果不一定为布尔值
# 逻辑与运算做取值时,取第一个为False的值,如果所有的运算数都是True取最后一个值
3 and 5 and 0 and 'hello' # 0
'good' and 'yes' and 'ok' and 100 # 100
# 逻辑或做取值时,取第一个为false的值;如果所有的运算数都是True,取最后一个值
0 or [] or 'hello' or 5 or 'ok' # hello
[] or {} or () # ()