【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. 这种限定:
  • 是编程规范的限定,而非强制限定
  • 不遵守也能正常运行,但是不建议这样做
  • 如需访问临时变量,可以预先在循环外定义它
相关推荐
Theodore_10223 小时前
4 设计模式原则之接口隔离原则
java·开发语言·设计模式·java-ee·接口隔离原则·javaee
网易独家音乐人Mike Zhou3 小时前
【卡尔曼滤波】数据预测Prediction观测器的理论推导及应用 C语言、Python实现(Kalman Filter)
c语言·python·单片机·物联网·算法·嵌入式·iot
安静读书3 小时前
Python解析视频FPS(帧率)、分辨率信息
python·opencv·音视频
----云烟----5 小时前
QT中QString类的各种使用
开发语言·qt
lsx2024065 小时前
SQL SELECT 语句:基础与进阶应用
开发语言
小二·5 小时前
java基础面试题笔记(基础篇)
java·笔记·python
开心工作室_kaic5 小时前
ssm161基于web的资源共享平台的共享与开发+jsp(论文+源码)_kaic
java·开发语言·前端
向宇it5 小时前
【unity小技巧】unity 什么是反射?反射的作用?反射的使用场景?反射的缺点?常用的反射操作?反射常见示例
开发语言·游戏·unity·c#·游戏引擎
武子康5 小时前
Java-06 深入浅出 MyBatis - 一对一模型 SqlMapConfig 与 Mapper 详细讲解测试
java·开发语言·数据仓库·sql·mybatis·springboot·springcloud
转世成为计算机大神6 小时前
易考八股文之Java中的设计模式?
java·开发语言·设计模式