惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
Netflix TechBlog - Medium
D
Docker
V
Vulnerabilities – Threatpost
T
Tor Project blog
A
Arctic Wolf
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
The Last Watchdog
The Last Watchdog
PCI Perspectives
PCI Perspectives
J
Java Code Geeks
罗磊的独立博客
S
Security @ Cisco Blogs
L
LangChain Blog
博客园 - 叶小钗
E
Exploit-DB.com RSS Feed
AWS News Blog
AWS News Blog
Engineering at Meta
Engineering at Meta
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
T
Threat Research - Cisco Blogs
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
I
Intezer
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Vercel News
Vercel News
Know Your Adversary
Know Your Adversary
博客园_首页
Blog — PlanetScale
Blog — PlanetScale
L
Lohrmann on Cybersecurity
D
DataBreaches.Net
Latest news
Latest news
人人都是产品经理
人人都是产品经理
The Cloudflare Blog
T
Threatpost
C
Check Point Blog
Microsoft Azure Blog
Microsoft Azure Blog
Help Net Security
Help Net Security
Last Week in AI
Last Week in AI
T
Tenable Blog
小众软件
小众软件
T
Troy Hunt's Blog
MongoDB | Blog
MongoDB | Blog
Simon Willison's Weblog
Simon Willison's Weblog
TaoSecurity Blog
TaoSecurity Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
云风的 BLOG
云风的 BLOG
Cloudbric
Cloudbric
Google DeepMind News
Google DeepMind News
S
Securelist
GbyAI
GbyAI
The Hacker News
The Hacker News
W
WeLiveSecurity

博客园 - 箫笛

Python 编程 - 数据类型和数据结构 Python 编程 - 函数 windows - WSL 的安装与使用 shell编程 - dialog 程序使用指南 FE Team - 如何做好前端代码审查 git 提交的撤销和恢复 React15 - redux-saga 如何在saga中实现轮询接口调用? React15 - React CSS Modules BEM命名实践 React15 - React 15 中 componentWillReceiveProps 为什么会多次调用, 同时componentDidUpdate 也会多次调用? React15 - React15类组件多次执行render方法的原因? React15 - React15应用中代码逻辑复用方案 React15 - React状态同步问题解决 React15 - React 15 中 React.pureComponent 的使用场景 React15 - React 15应用在页面渲染时会多次执行类组件的render 函数的原因 React15 - React 15 中能用 componetDidUpdate 代替 componentWillReceiveProps 吗? React15 - React 15 生命周期函数详解 React15 - 如何在React 15中实现自定义的事件订阅与发送(例如组件间通信) React15 - React15应用中的事件订阅和发送机制 React15 - CSS中的BEM规范 React15 - React CSS Modules BEM命名实践 React15 - 写sass 样式文件,嵌套的结构好,还是扁平的结构好? React15 - sass 中 @mixin 和 @extend 的区别是什么? React15 - React 15 应用 如何使用Css moudules 方式进行模块化开发 React15 - React15应用Sass使用指南 React15 - React 15 应用如何进行性能优化?
Python 编程 - 语句
箫笛 · 2026-06-15 · via 博客园 - 箫笛

在 Python 3 开发中,逻辑控制与流程语句是构建程序行为的基础。它们决定了代码的执行顺序、条件分支以及重复操作。下面介绍几种主要的流程控制结构。


1. 条件语句:ifelifelse

用于根据条件表达式的真值选择执行不同的代码块。

x = 10
if x > 0:
    print("正数")
elif x == 0:
    print("零")
else:
    print("负数")
  • elifelse if 的缩写,可以出现多次。
  • 条件表达式无需括号,但注意冒号和缩进(通常 4 个空格)。

2. 循环语句

while 循环

当条件为真时重复执行代码块。

count = 0
while count < 5:
    print(count)
    count += 1

for 循环

用于遍历任何可迭代对象(列表、元组、字符串、字典、range 等)。

# 遍历列表
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)

# 使用 range()
for i in range(5):   # 0,1,2,3,4
    print(i)

range(start, stop, step) 可以生成整数序列。


3. 循环控制语句

break

提前终止整个循环。

for i in range(10):
    if i == 5:
        break
    print(i)   # 输出 0 1 2 3 4

continue

跳过本次循环剩余代码,进入下一次迭代。

for i in range(5):
    if i % 2 == 0:
        continue
    print(i)   # 输出 1 3

else 子句(用于循环)

当循环正常结束(没有被 break 终止)时执行 else 块。

for i in range(3):
    print(i)
else:
    print("循环正常结束")  # 会执行

for i in range(3):
    if i == 1:
        break
    print(i)
else:
    print("不会执行")      # 因为 break 了

4. pass 语句

空操作,用作占位符,保持语法完整性。

def TODO():
    pass          # 将来实现

if x > 0:
    pass          # 暂时什么都不做

5. 异常处理中的流程控制(简要)

tryexceptelsefinally 也可视为流程控制,用于处理错误和清理资源。

try:
    num = int(input("输入数字: "))
except ValueError:
    print("无效数字")
else:
    print(f"你输入了 {num}")   # 无异常时执行
finally:
    print("结束")              # 无论是否异常都执行

6. 上下文管理(with 语句)

虽然不是严格意义上的流程控制,但它简化了资源管理的代码流程。

with open("file.txt", "r") as f:
    content = f.read()
# 退出 with 块时自动关闭文件

总结表

语句/结构 作用
if-elif-else 条件分支
while 条件循环
for 迭代循环
break 跳出整个循环
continue 跳过当前迭代剩余部分
else (循环) 循环未被 break 时执行
pass 占位符,无操作
try-except 异常处理,改变错误流程
with 自动管理资源(如文件、锁)

掌握这些基本流程语句,就可以编写清晰、灵活的 Python 程序。实际开发中,合理组合它们,并注意代码的可读性和缩进规范,是良好编程习惯的一部分。