码迷,mamicode.com
首页 > 编程语言 > 详细

Python入门8 —— 逻辑运算符补充

时间:2020-02-23 14:54:33      阅读:70      评论:0      收藏:0      [点我收藏+]

标签:分割   逻辑   ===   原则   计算   ==   not   返回   布尔值   

一:优先级:not > and > or

1.not与紧跟其后的那个条件是不可分割的

2.如果条件语句全部由纯and、或纯or链接,按照从左到右的顺序依次计算即可

print(True and 10 > 3 and not 4 < 3 and 1 == 1)
print(False or 10 < 3 or not 4 < 3 or 1 == 1)

3.对于既有and又有or链接的语句,以and为中心把左右两个条件用括号括起来

res=(10 == 9 and 0 < 3) or ('' == 'egon' and 0> 3) or not True or ('egon' == 'dsb' and 333 > 100) or 10 > 4
print(res)

二:短路运算=>偷懒原则

1.所有的数据类型的值都自带布尔值,所以值可以直接被当成条件使用

2.“0”、“None”、“空”三种值对应的布尔值为False,其余全为True

if 0:
print('ok')
else:
print('=====>')


if 3 and []:
    print('真')
else:
    print('假')

3.and运算会返回当前计算位置的值

res=0 and 123
res=111 and 123
print(res)

if 111 and 123:
    print('ok')
else:
    print('no')

x=''
if x:
    print('不为空')
else:
    print("为空")

print(1 or 0) # 1
print(0 and 2 or 1) # 1
print(0 and 2 or 1 or 4) # 1

Python入门8 —— 逻辑运算符补充

标签:分割   逻辑   ===   原则   计算   ==   not   返回   布尔值   

原文地址:https://www.cnblogs.com/xuexianqi/p/12349485.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!