招式篇-Day13 逻辑运算符 and /or/not

26 次阅读 2026-10-16 09:41

🍀功法简介(知识点)

当一个判断需要同时满足多个条件,就可以使用逻辑运算符,把多个比较条件拼在一起。

  • and(并且):左右两边全部为 True,整体结果才是 True;只要一个 False,结果就是 False

  • or(或者):任意一边为 True,整体就是 True;两边全 False 才是 False

  • not(取反):把真假颠倒,not True → False,not False → True

基础示例:

minute = 40
is_holiday = True

# 练习时长≥30 并且 是休息日
if minute >=30 and is_holiday:
    print("休息日也坚持练习,太厉害了!")

🥋今日 Kata 任务(练习)

  1. input 输入今日练习分钟,转为 int 存入practice_min

  2. input 输入是否周末,输入1代表是周末,0代表工作日,转为 int 存入is_weekend

  3. 判断规则:

    • 如果 practice_min >= 30 并且 is_weekend == 1:打印🎉周末高质量修炼!

    • 如果 practice_min >= 30 或者 is_weekend ==1:打印👍不错,继续保持

    • 其他情况:打印💡有空可以多练习一会

✅参考示例代码

practice_str = input("请输入今天练习的分钟数:")
practice_min = int(practice_str)
weekend_str = input("今天是周末吗?输入1是,0不是:")
is_weekend = int(weekend_str)

if practice_min >= 30 and is_weekend == 1:
    print("🎉周末高质量修炼!")
elif practice_min >= 30 or is_weekend == 1:
    print("👍不错,继续保持")
else:
    print("💡有空可以多练习一会")

示例运行 1:

请输入今天练习的分钟数:40
今天是周末吗?输入1是,0不是:1
🎉周末高质量修炼!

示例运行 2:

请输入今天练习的分钟数:32
今天是周末吗?输入1是,0不是:0
👍不错,继续保持

示例运行 3:

请输入今天练习的分钟数:20
今天是周末吗?输入1是,0不是:0
💡有空可以多练习一会

🧠思考题(进阶可选)

试运行代码,理解not的效果:

a = 20
print(not a > 30)

思考:not是把后面整个条件的真假反转,那 not (a>10 and a<50) 是什么含义?

💡功法小提示

⚠️ and 和 or 是英文单词,不是符号!⚠️ 多个条件组合时,可以用小括号()包裹条件,提升可读性,也可以改变运算优先级。⚠️ 优先级:not > and > or,不确定就手动加括号。