🍀功法简介(知识点)
今天不学习新语法,综合前面学过的比较运算符 + and/or/not + if elif else + 布尔值做综合练习。
复合条件 = 多个比较表达式,用逻辑运算符拼装在一起,用来描述更加复杂的业务规则。
复习要点:
and:全部条件满足才成立or:任意一个条件满足就成立not:条件结果取反多分支从上到下依次判断,匹配第一个满足条件的分支
基础示例:
minute = 42
# 练习时间大于30,并且小于60
if minute >30 and minute <60:
print("练习时长在合理区间")🥋今日 Kata 任务(练习)
需求:Python Kata 修炼打卡系统
input 输入练习分钟,转 int 存入
practice_mininput 输入是否坚持打卡,输入
1代表打卡,0代表未打卡,转 int 存入has_check判断规则:
练习≥30 分钟 并且 打卡 (has_check ==1) → 打印
🏆完美打卡!获得今日勋章练习≥30 分钟 或者 打卡 (has_check ==1) → 打印
⭐表现不错,继续坚持其余情况 → 打印
📝明天记得来打卡修炼
✅参考示例代码
practice_str = input("请输入今天练习的分钟数:")
practice_min = int(practice_str)
check_str = input("是否打卡?输入1打卡,0未打卡:")
has_check = int(check_str)
if practice_min >= 30 and has_check == 1:
print("🏆完美打卡!获得今日勋章")
elif practice_min >= 30 or has_check == 1:
print("⭐表现不错,继续坚持")
else:
print("📝明天记得来打卡修炼")
示例运行 1:
请输入今天练习的分钟数:40
是否打卡?输入1打卡,0未打卡:1
🏆完美打卡!获得今日勋章示例运行 2:
请输入今天练习的分钟数:25
是否打卡?输入1打卡,0未打卡:1
⭐表现不错,继续坚持示例运行 3:
请输入今天练习的分钟数:20
是否打卡?输入1打卡,0未打卡:0
📝明天记得来打卡修炼
🧠思考题(进阶可选)
新增规则:如果练习时间超过 90 分钟,就算没有打卡,也输出🔥超长修炼,值得鼓励。想一想,这行判断要写在哪个位置?为什么?
💡功法小提示
⚠️ 复合条件建议适当增加括号,让逻辑更清晰,例如 (a>10) and (b==1)⚠️ 多分支顺序不能随意调换,优先级更高的条件写在上方。⚠️ 写复杂条件前,可以先用草稿纸梳理逻辑,再翻译成代码。