【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. 这种限定:
  • 是编程规范的限定,而非强制限定
  • 不遵守也能正常运行,但是不建议这样做
  • 如需访问临时变量,可以预先在循环外定义它
相关推荐
程序员的世界你不懂2 小时前
Appium+python自动化(八)- 认识Appium- 下章
python·appium·自动化
_r0bin_3 小时前
前端面试准备-7
开发语言·前端·javascript·fetch·跨域·class
zhang98800003 小时前
JavaScript 核心原理深度解析-不停留于表面的VUE等的使用!
开发语言·javascript·vue.js
恸流失3 小时前
DJango项目
后端·python·django
Julyyyyyyyyyyy4 小时前
【软件测试】web自动化:Pycharm+Selenium+Firefox(一)
python·selenium·pycharm·自动化
Fanxt_Ja5 小时前
【JVM】三色标记法原理
java·开发语言·jvm·算法
蓝婷儿5 小时前
6个月Python学习计划 Day 15 - 函数式编程、高阶函数、生成器/迭代器
开发语言·python·学习
love530love5 小时前
【笔记】在 MSYS2(MINGW64)中正确安装 Rust
运维·开发语言·人工智能·windows·笔记·python·rust
水银嘻嘻5 小时前
05 APP 自动化- Appium 单点触控& 多点触控
python·appium·自动化
slandarer5 小时前
MATLAB | 绘图复刻(十九)| 轻松拿捏 Nature Communications 绘图
开发语言·matlab