【python】变量作用域

目录:

  • while 循环的基础语法
  • while 循环的基础案例
  • while 循环的嵌套应用
  • while 循环的嵌套案例
  • for 循环的基础语法
  • for 循环的嵌套应用
  • 循环中断:break 和 continue
  • 综合案例

目录

  • for 循环的基础语法
    • 基础语法
    • range语句
    • 变量作用域

思考

python 复制代码
for i in range(5):
    print(i)

print(i)

如图代码,思考一下:

最后一句的 print 语句,能否访问到变量 i?

规范上:不允许
实际上:可以

for 循环的变量作用域

python 复制代码
for 临时变量 in 待处理数据集:
    循环满足条件时执行的代码

回看 for 循环的语法,我们会发现,将从数据集(序列)中取出的数据赋值给:临时变量

为什么是临时的呢?

临时变量,在编程规范上,作用范围(作用域),只限定在 for 循环内部

如果在 for 循环外部访问临时变量:

  • 实际上是可以访问到的
  • 在编程规范上,是不允许、不建议这么做的

演示:

python 复制代码
"""
演示 Python for 循环临时变量的作用域
"""

for i in range(5):
    print(i)

print(i)

输出结果:

0

1

2

3

4

4

建议这样操作:

python 复制代码
i = 0
for i in range(5):
    print(i)

print(i)

规范,优雅。

总结:

  1. for 循环中的临时变量,其作用域限定为:

循环内

  1. 这种限定:
  • 是编程规范的限定,而非强制限定
  • 不遵守也能正常运行,但是不建议这样做
  • 如需访问临时变量,可以预先在循环外定义它
相关推荐
我是无敌小恐龙6 分钟前
Java SE 零基础入门Day06 方法重载+Debug调试+String字符串全套API详解(超全干货)
java·开发语言·人工智能·python·transformer·无人机·量子计算
AI+程序员在路上7 分钟前
Qt6读取rtsp视频流的几种方法
开发语言·qt6.3
aidesignplus8 分钟前
从平方到线性:Mamba如何挑战Transformer的长序列效率瓶颈?
人工智能·python·深度学习·vim·transformer
2301_773553629 分钟前
Redis怎样优化复制缓冲池大小_调大repl-backlog-size减少频繁的全量同步触发
jvm·数据库·python
三维频道9 分钟前
工业级三维扫描实测:汽车灯具复杂结构件的全尺寸 3D 测量方案分析
java·人工智能·python·数码相机·3d·汽车·汽车轻量化制造
weixin_3812881813 分钟前
HTML lang 属性的正确取值规范:BCP 47 格式详解与最佳实践
jvm·数据库·python
码农飞哥16 分钟前
从Java后端到AI应用开发,我这两年做了什么
java·开发语言·人工智能
阿荻在肝了17 分钟前
Agent学习七:LangGraph学习-持久化与记忆二
python·学习·agent
u01091476020 分钟前
如何正确对 JavaScript 对象的键进行字母序排序
jvm·数据库·python
maqr_11021 分钟前
MySQL在事务中如何实现串行化_使用select lock in share mode查询
jvm·数据库·python