day03.04.逻辑运算符
# 逻辑运算符 # and 并且(与) or 或者 not 非 # and:并且 # 两边必须都为真才为真,否则为假(只要有一个为假就为假) print(True and True) # True print(True and False) # False print(False and True) # False print(False and False) # False print(4 > 5 and 6 < 7) # False # 短路操作 # 从左往右开始判断每个操作数的值是否为False(隐式判断),如果为假,则直接返回该操作数,否则继续往右判断下一个数,全为真返回最后一个数 print(6 and 8) # 8 print(bool(6)) # True print(bool(8)) # True 数字只要不是0,bool()正数负数都为真True print(0 and 8) # 0 print(0 and print(666)) # 0 没有打印666证明只执行到0就不执行下面的数据了 print(6 and print(888)) # 888 None print(print()) # print()的结果是None print()自身的结果是None值 print(66 and 0 and -3) # 0 print(print(666) and 0) # 666 None # bool值隐式判断 假 False 真 True # 数值:0是假,其余为真 # 字符串:空字符串 ''和""和 '''''' 为假,其余为真 # bool :True False # NoneType: None 为假 # 列表:空列表[]为假,其余为真 # 元组:空元组()为假,其余为真 空元组不用加逗号,有一个元素才需要加逗号 # 字典:空字典{}为假,其余为真 print(bool(0)) # False print(bool(-3)) # True print(bool('')) # False print(bool(' ')) # True print(bool('abcd')) # True print(bool([])) # False print(bool([3, 4])) # True print(bool()) # False print(bool(3,)) # True print(bool({})) # False print(bool({'age': 13})) # True # 练习 print(None and 666 and 0) # None print((3,) and [] and -1) # [] print(3 and False and "") # False print(3 and 6 and {6, 6, 6}) # {6} # 练习:查看下面表达式的结果 # print(999 and None and 666) # None # print(print(8) and 30) # 8 None # print(' ' and -100 and [] and 8) # [] print(print(9) and print(5)) # 9 None # or 或者 # 两边都为假才为假,否则为真(只要有一个为真则为真) print(True or True) # True print(True or False) # True print(False or True) # True print(False or False) # False # 短路操作 # 从左往右一个个操作数进行判断,如果为真,则直接返回该值,否则继续判断下一个数 print(6 or 8) # 6 print(0 or -1) # -1 print('' or '雷布斯' or '乔布斯') # ‘雷布斯’ print(0 or '小米su7' or print(666)) # '小米su7' print(0 or print(666)) # 666 None # 练习 a = True and 6 # 6 b = False or 1 or True # 1 print(a, b) # 6 1 print(a * 3 + b) # 19 a = 6 and True # True b = False or 1 or True # 1 print(a, b) # True 1 print(a * 3 + b) # 4 # not 非 # 得到的是True 或 False print(not 4 > 5) # True print(not 5) # False print(not 0) # True print(not -1) # False print(not ' ') # False # 练习: # 请输入一个年份year: # 判断year是否为闰年(满足下面条件之一即可): # 1.能被4整除(使用%),且不能被100整除 # 2.能被400整除 n = 2024 print((n % 4 == 0 and n % 100 != 0) or n % 400 == 0) # True # 参考答案: # year = int(input("请输入一个年份:")) # z = year%4 == 0 and year%100 != 0 or year%400 == 0 # print(z) # 运算优先级() 加括号可以提高优先级 # (1+2) * 3 # n%4 == 0 如这个里面 == 优先级比较低,不需要加括号 # and or not 的优先级比 == 等比较运算符的优先级低一些,不需要用括号 不确定优先级的时候可用用括号,稳当些 ''' 运算符优先级 ** 幂 最高优先级 * / % // 乘 除 取余数 取整数 + - 加法 减法 <= < > >= 比较运算符 == != 等于运算符 = %= /= //= -= += *= 赋值运算符 not or and 逻辑运算符 '''
原文地址:https://blog.csdn.net/m0_61566562/article/details/140503937
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!