与 and
或 or
非 not
与 and
and 表示并且关系 一假俱假
示例
#and 表示并且关系 一假俱假 两个条件都满足 print(True and True) #真 print(False and False) #假 print(True and False) #假 print(False and True) #假 # 例子 print(10 > 5 and 5 > 4) print(10 < 5 and 5 < 4) print(10 > 5 and 5 < 4) print(10 < 5 and 5 > 4)
演示效果
或 or
or 表示或者的关系 一真俱真 满足其中一个
示例
#or 表示或者的关系 一真俱真
print(True or True) #True
print(False or False) #False
print(True or False) #True
print(False or True) #True
# 例子
print(10 > 5 or 5 > 4)
print(10 < 5 or 5 < 4)
print(10 > 5 or 5 < 4)
print(10 < 5 or 5 > 4)
演示效果
非 not
not 表示取反
示例
#not 表示取反
print(not True) #False
print(not False) #True
print(not 100) #False
print(not 0) #True
演示效果
短路逻辑
如果前面的条件确定,则不再考虑后面的条件
练习题1
"""
练习1:
闰年判断:
条件1: 年份能被4整除,但是不能被100整除.
条件2:年份能被400整除
在控制台中获取年份
判断是否为闰年,如果是显示true,否则显示false
"""
代码实现
year = int(input("请输入年份!"))
result = year % 4 == 0 and year % 100 != 0 or year % 400 == 0
#满足年份除以4余数等于0 和 年份除以100余数不等于0 or 满足年份除以400余数等于0
print(result)
实现效果
练习题2
"""
练习2:在控制台中获取一个4位整数
计算每位相加和
"""
代码实现
#方法1
num = int(input("请输入一个四位整数"))
qian = num // 1000 # 取整除数
bai = num // 100 % 10 # 取整数后再次取除以10的余数
shi = num % 100 // 10 # 取除以100的余数后再次取除以10的整除数
ge = num % 10 # 取余数
result =qian + bai + shi + ge
print(result)
# 方法2
num = int(input("请输入一个四位整数"))
result = num // 1000
result += num // 100 % 10
result += num % 100 // 10
result += num % 10
print(result)
实现效果
练习题3
在控制台中获取一个总秒数
计算几小时零几分钟零几秒钟
代码实现
time = int(input("请输入总秒数:"))
hour = time // 3600
minute = time % 3600 // 60
second = time % 3600 % 60
print(str(time)+"秒等于"+str(hour)+"小时"+str(minute)+"分钟"+str(second)+"秒")
实现效果