当前位置:首页>python>Python 条件语句完全指南:从入门到实战

Python 条件语句完全指南:从入门到实战

  • 2026-10-10 13:52:56
Python 条件语句完全指南:从入门到实战

适合零基础读者,建议收藏后慢慢学习 📚


一、什么是条件语句?

条件语句让程序能够根据条件做出判断,就像生活中的"如果…就…":

  • 如果下雨,就带伞
  • 如果成绩 ≥ 60,就及格
  • 如果是会员,就打折

Python 中使用 if、elif、else 来实现。


二、基础篇:单条件判断

2.1 最简单的 if 语句

age = 18

if age >= 18:
print("你已成年,可以进入网吧")

输出:

你已成年,可以进入网吧

💡 注意:Python 用缩进(通常是4个空格)表示代码块,这是 Python 的特色!


2.2 if…else 二选一

score = 55

if score >= 60:
print("恭喜你,考试及格!")
else:
print("很遗憾,需要补考")

流程图理解:

图片来源:Problem Solving with Python


三、进阶篇:多条件判断

3.1 if…elif…else 多分支

score = 85

if score >= 90:
    grade = "A"
elif score >= 80:
    grade = "B"
elif score >= 70:
    grade = "C"
elif score >= 60:
    grade = "D"
else:
    grade = "F"

print(f"你的成绩等级是:{grade}")

输出:

你的成绩等级是:B

⚠️ 重要:条件是从上到下判断的,满足一个就会跳出,所以顺序很重要!

错误示范(顺序颠倒):

if score >= 60:      # 85也满足这个条件!
    grade = "D"
elif score >= 90:    # 这行永远不会执行
    grade = "A"

3.2 实际案例:BMI 计算器

height = 1.75# 米
weight = 70# 公斤

bmi = weight / (height ** 2)

if bmi < 18.5:
    result = "偏瘦"
elif bmi < 24:
    result = "正常"
elif bmi < 28:
    result = "偏胖"
else:
    result = "肥胖"

print(f"你的BMI是:{bmi:.1f},属于:{result}")

输出:

你的BMI是:22.9,属于:正常

四、高级篇:条件组合与嵌套

4.1 逻辑运算符:and、or、not

运算符
含义
示例
and
并且
age > 18 and age < 60
or
或者
day == "周六" or day == "周日"
not
取反
not is_raining
# 案例:判断是否能购买优惠票
age = 65
is_student = False

# 老人(60+)或学生可以优惠
if age >= 60or is_student:
print("享受优惠票价:50元")
else:
print("普通票价:100元")

4.2 嵌套条件(条件里的条件)

# 案例:登录系统
username = "admin"
password = "123456"
is_active = True

if username == "admin":
if password == "123456":
if is_active:
print("登录成功!欢迎回来")
else:
print("账号已被禁用")
else:
print("密码错误")
else:
print("用户名不存在")

🎯 建议:嵌套不要超过 3 层,否则可读性会变差。复杂逻辑建议拆分成函数。

嵌套逻辑流程图示例:

图片来源:Strobe Corp


4.3 简化写法:三元表达式

# 传统写法
if age >= 18:
    status = "成年"
else:
    status = "未成年"

# 简化为一行(三元表达式)
status = "成年"if age >= 18else"未成年"

五、实战篇:综合案例

5.1 智能计算器(带条件判断)

# 简单的计算器,包含错误处理
num1 = float(input("请输入第一个数字:"))
operator = input("请输入运算符(+ - * /):")
num2 = float(input("请输入第二个数字:"))

if operator == "+":
    result = num1 + num2
elif operator == "-":
    result = num1 - num2
elif operator == "*":
    result = num1 * num2
elif operator == "/":
if num2 != 0:           # 嵌套判断:除数不能为0
        result = num1 / num2
else:
        result = "错误:除数不能为0"
else:
    result = "错误:不支持的运算符"

print(f"计算结果:{result}")

5.2 猜数字游戏

import random

secret = random.randint(1, 100)
attempts = 0

print("猜一个 1-100 之间的数字")

whileTrue:
    guess = int(input("你的猜测:"))
    attempts += 1

if guess == secret:
print(f"🎉 恭喜你猜对了!用了 {attempts} 次")
break
elif guess < secret:
print("📈 太小了,再大一点")
else:
print("📉 太大了,再小一点")

六、常见错误与避坑指南

❌ 错误 1:忘记缩进

if x > 0:
print("正数")    # IndentationError!

❌ 错误 2:用错比较运算符

# 错误:赋值运算符
if x = 5:        # SyntaxError!

# 正确:比较运算符
if x == 5:

❌ 错误 3:判断空值

# 不推荐
if name == "":

# 推荐(Pythonic)
ifnot name:

文字版总结:

条件语句结构:
├── if          → 单一条件
├── if-else     → 二选一
├── if-elif-else → 多选一
└── 嵌套 if      → 复杂逻辑

关键概念:
├── 缩进表示代码块
├── 条件顺序影响结果
├── and/or/not 组合条件
└── 三元表达式简化代码

八、课后练习

  1. 基础
    :写程序判断一个年份是否为闰年
  2. 进阶
    :实现石头剪刀布游戏(玩家 vs 电脑)
  3. 挑战
    :做一个带菜单的银行存取款系统

最新文章

随机文章