python3 运算符(下篇)

运算符

逻辑运算符

逻辑运算符返回的结果也是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的每个运算符都是存在优先级的

总结:不要依赖使用运算符的优先级,反而是降低代码的可读性,而是建议使用()来区分优先级,如果太过复杂的话,尽量拆分计算

发布了37 篇原创文章 · 获赞 14 · 访问量 1390

猜你喜欢

转载自blog.csdn.net/yangshihuz/article/details/103757808
今日推荐