在Python中使用判断语句和循环的教程

一颗松果
一颗松果
发布时间:2026-10-12| 3人浏览过
原创

掌握条件判断与循环是实现程序自动化的核心。本文详解if分支结构、for与while循环的执行机制,结合range函数演示高效累加,并纠正输入读取时的类型转换常见报错,帮助开发者快速理清Python控制流。

核心逻辑:条件判断分支(if...elif...else)

程序能够替代人工完成决策,依赖的是布尔值的判定结果。Python使用缩进划分代码块,同一缩进层级内的语句会作为一个整体执行。

# 基础if判断
age = 20
if age >= 18:
    print(f'your age is {age}')
    print('adult')

# 添加else分支:当条件为False时执行
age = 3
if age >= 18:
    print(f'your age is {age}')
    print('adult')
else:
    print(f'your age is {age}')
    print('teenager')

注意冒号不可遗漏。实际开发中常用elif(即 else if)进行多分支筛选,系统会自上而下逐条评估,一旦某条条件成立,执行对应代码后直接跳过后续所有elif和else:

age = 3
if age >= 18:
    print('adult')
elif age >= 6:
    print('teenager')
else:
    print('kid')

Python支持条件简写。只要变量是非零数值、非空字符串或非空容器,隐式求值即为True,否则为False。这种机制常用于初始化校验或快捷开关判断。

迭代工具:for...in 与 while 循环

批量处理数据时,for循环按顺序提取可迭代对象中的元素。配合内置的range()函数,可轻松生成等差整数序列,避免手动罗列冗长列表:

# 查看range生成的序列外观
print(list(range(5)))  # 输出: [0, 1, 2, 3, 4]

# 高效计算1到100的累加和
sum_val = 0
for x in range(101):
    sum_val = sum_val + x
print(sum_val)

当需要依赖动态变化的状态来决定终止时机时,while循环更为合适。其逻辑为:每次进入循环体前检查条件,满足则执行,不满足则退出。以下示例计算100以内奇数总和:

sum_odd = 0
n = 99
while n > 0:
    sum_odd = sum_odd + n
    n = n - 2
print(sum_odd)

编写循环时必须预留明确的退出路径,否则可能陷入死循环。运行时若程序无响应,可使用Ctrl+C中断进程或关闭解释器窗口。

易错排查:标准输入与数据类型转换

初学者常误以为直接比对用户输入的数字能得出正确结果。实际上,Python 3的input()函数读取到的内容始终是字符串类型。字符串与整数的字典序比较会导致反常识的输出:

# 原始错误写法(字符串参与数学比较)
birth = input('birth: ') 
if birth < 2000:  # '1982' 转为数字比较会报错或产生非预期结果
    print('00前')
else:
    print('00后')

修复方法是显式调用int()完成类型转换。但需注意,若用户意外输入字母或符号,int()会抛出ValueError导致程序崩溃。建议在关键输入处配合异常捕获结构使用,或在后续章节结合错误处理模块完善健壮性。

try:
    birth = int(input('birth: '))
    if birth < 2000:
        print('00前')
    else:
        print('00后')
except ValueError:
    print('请输入合法的年份数字')

简要总结

条件分支赋予程序选择能力,循环结构解决重复劳动。掌握if...elif...else的短路特性、合理利用range()优化迭代,并严格把控输入数据的类型边界,即可稳定构建大多数业务逻辑骨架。以上就是关于Python条件判断与循环语句实操技巧的详细内容,更多关于Python基础开发的资料请关注本站其它相关文章!

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。