重庆小潘seo博客

当前位置:首页 > 重庆网络营销 > 小潘杂谈 >

小潘杂谈

云计算开发学习笔记:Python3 变量查找

时间:2020-09-15 15:00:07 作者:重庆seo小潘 来源:
在Python3中查找变量的顺序为:“在局部找不到,便会去局部外的局部找(例如闭包),再找不到就会去全局找,再去内置中找”。可以看一个具体的例子。 Python 的一个内建值 int,我们首先将其赋值为 0,然后定义一个函数 fun1()。 函数 fun1() 的作用就是调用

在Python3中查找变量的顺序为:“在局部找不到,便会去局部外的局部找(例如闭包),再找不到就会去全局找,再去内置中找”。可以看一个具体的例子。

Python 的一个内建值 int,我们首先将其赋值为 0,然后定义一个函数 fun1()。

云计算开发学习笔记:Python3 变量查找

函数 fun1() 的作用就是调用函数 fun2() 来打印 int 的值。

调用函数 fun1():

云计算开发学习笔记:Python3 变量查找

因为 local 中的 int = 2,函数将其打印出来。

将函数 fun2() 中的 int = 2 删除:

云计算开发学习笔记:Python3 变量查找

调用函数 fun1():

云计算开发学习笔记:Python3 变量查找

因为 local 找不到 int 的值,就去上一层 non-local 寻找,发现 int = 1 并打印。

而进一步删除函数 fun1() 中的 int = 1:

云计算开发学习笔记:Python3 变量查找

调用函数 fun1():

云计算开发学习笔记:Python3 变量查找

因为 local 和 non-local 都找不到 int 的值,便去 global 中寻找,发现 int = 0 并打印。

若删除 int = 0这一条件:

云计算开发学习笔记:Python3 变量查找

调用函数 fun1():

云计算开发学习笔记:Python3 变量查找

因为 local、non-local、global 中都没有 int 的值,便去 built-in 中寻找 int 的值,即:

云计算开发学习笔记:Python3 变量查找