【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. 这种限定:
  • 是编程规范的限定,而非强制限定
  • 不遵守也能正常运行,但是不建议这样做
  • 如需访问临时变量,可以预先在循环外定义它
相关推荐
落羽凉笙1 小时前
Python学习笔记(3)|数据类型、变量与运算符:夯实基础,从入门到避坑(附图解+代码)
笔记·python·学习
Quintus五等升1 小时前
深度学习①|线性回归的实现
人工智能·python·深度学习·学习·机器学习·回归·线性回归
ytttr8731 小时前
隐马尔可夫模型(HMM)MATLAB实现范例
开发语言·算法·matlab
天远Date Lab1 小时前
Python实战:对接天远数据手机号码归属地API,实现精准用户分群与本地化运营
大数据·开发语言·python
listhi5201 小时前
基于Gabor纹理特征与K-means聚类的图像分割(Matlab实现)
开发语言·matlab
哈里谢顿2 小时前
Python异常链:谁才是罪魁祸首?一探"The above exception"的时间顺序
python
qq_433776422 小时前
【无标题】
开发语言·php
哈里谢顿2 小时前
验证 list() 会调用 `__len__` 方法的深度解析
python·django
Davina_yu2 小时前
Windows 下升级 R 语言至最新版
开发语言·windows·r语言
阿珊和她的猫2 小时前
IIFE:JavaScript 中的立即调用函数表达式
开发语言·javascript·状态模式