运算符
逻辑运算符
逻辑运算符返回的结果也是bool类型
多个逻辑符号一起使用时加()区分优先级
a = 10
b = 20
print(a >= 10 and b >= 10)
print(a >= 15 and b >= 15)
print(b >= 15 and a >= 15)
'''and 只要2个条件有一个为False,就返回False,不区分前后'''
print(a >= 10 or b >= 10)
print(a >= 15 or b >= 15)
print(b >= 15 or a >= 15)
'''or 同样只要满足一个条件为True,就返回True,不区分前后'''
print(b >= 25 or a >= 25)
''''条件全为False,才返回False'''
not用法:
在python中not是逻辑判断词,用于布尔型True和False,not True为False,not False为True
a = 3 < 2
print(a)
print(not a)
if not a:
print('python3')
'''可以配合if语句来做判断'''
b = '112233'
c = '1123'
if b not in c:
print('b不在c中')
'''同样,可以把值更换成任何的列表或者其他来做判断比较'''
'''in运算符是判断包含的意思'''
逻辑运算的优先级
rint(11 < 10 and 11 < 5 or 5 < 10 )
'''True or True'''
print(11 < 10 and 11 < 5 or 5 > 10 )
'''True or False'''
print(11 > 10 and (11 < 5 or 5 > 10))
'''True and Fales'''
print(11 < 10 and (11 < 5 or 5 > 10))
'''Fales and Fales'''
对于组个逻辑来说,()来区分优先级是非常重要的
in运算符
用来做判断A是否包含在B里面
可以配合not使用,not in代表不包含
对象必须是可以迭代的
整数不支持
a = 'abcd'
b = 'a'
print(a in b)
print(a not in b)
a_list = [1,2,3,4]
b = '1'
print(b in a)
'''列表存储的整数是可以的,因为列表是可迭代的对象,这个后面学习就能理解什么叫迭代'''
2个判断运算符是很常用配合条件判断,not 和 in
三目运算符
通常被理解为if语句的简写法
格式为:条件为真的结果 if 判段的条件 else 条件为假的结果
a = 10
b = 5
if_ab = '真' if a > b else '假'
print(if_ab)
if a > b:
print('真')
else:
print('假')
'''上面2个写法都是一样的,但是明显上面那个比较简洁,但是也只能针对条件为不是什么就是什么'''
if a < b:
print('真')
elif a == 10:
print('a==真')
else:
print('假')
'''如果条件为多个判断就无法使用三目运算'''
运算符的结合和优先级
python大部分运算符都是符合从做右运算
单目运算符、赋值运算符、三目运算符列外,相反从右到左运算
python的每个运算符都是存在优先级的
总结:不要依赖使用运算符的优先级,反而是降低代码的可读性,而是建议使用()来区分优先级,如果太过复杂的话,尽量拆分计算