day02.09.逻辑运算符·二

# 逻辑运算符
#   and与(且)  or或者  not非(取反)  and在有些编程语言中是&&,在python中不能用这样的符号表示

# and: 并且
#   2边都为True则为True,只要有一个是False 则为False
print(True and True)  # True
print(True and False)  # False
print(False and True)  # False
print(False and False)  # False

# or:或者
#   2边都为False则为False, 只要有一个是True则为True
print(True or True)  # True
print(True or False)  # True
print(False or True)  # True
print(False or False)  # False

print(3 < 4 and 6 < 7)  # True
print(1 == True or 6 == False)  # True
print()

# not 非,取反
print(not True)  # False
print(not False)  # True
print(not 3 > 4)  # True
print(not 1)  # False
print(not '')  # True
print(not [])  # True
print()

# 不同数据类型 隐式bool值 判断
#   数字类型: 0是假,其他为真
#   字符串类型: 空字符串''为假,其他为真
#   bool类型: False为假,True为真
#   NoneType类型: None是假
#   list类型:空列表[]是假,其他为真
#   tuple元组: 空元组()为假,其他为真
#   dict字典:空字典{}为假,其他为真
#   set集合:空集合     set()为假,其他为真

'''
print(bool(0))
print(bool(''))
print(bool(None))
print(bool([]))
print(bool(()))
print(bool({}))
print(bool(set()))                
'''

print()

# 扩展: and和or的短路运算

# and:
#  从左往右依次判断每一个数,只要有一个是False(bool值隐式判断) 则返回该数
print(0 and 4)  # 0
print(3 and 4)  # 4

# print() : None
print(0 and 4 and print(666))  # 0
print([1, 2] and None and 666)  # None
print()

# or:
#  从左往右依次判断每一个数,只要有一个是True(bool值隐式判断) 则返回该数
print(3 or 4)  # 3
print(0 or 4)  # 4

# print() : None print()的返回值是None
print(0 or print(666) or 'hello')  # 666 hello


# 练习:
x = True and 6  # x=6
y = False or True or 8  # y=True
z = x * 3 + y * 2
print(z)  # 20
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值