python入门之作用域
Posted 城南花已开
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python入门之作用域相关的知识,希望对你有一定的参考价值。
作用域的分类
1、全局作用域
全局可以调用的名字就存在于全局作用域
内置名称空间 + 全局名称空间
2、局部作用域
局部可以调用的名字就存放于局部作用域
局部名称空间
3、 global
声明全局变量
4、 nonlocal
在局部名称空间声明局部变量,在局部修改上层函数的变量
只有可变类型可以在局部修改外部变量的值
x = 1
def index():
global x
x = 2
index()
print(x)
# 在局部修改外部函数的变量
x = 1111
def index():
x = 1
def func2():
x = 2
def func():
nonlocal x
x = 3
func()
print(x)
func2()
print(x)
index()
print(x)
# 只有可变类型可以在局部修改外部变量的值
l1 = []
def index(a):
l1.append(a)
index(1)
# 局部变量的修改无法影响上层,上上层
def index():
x = 1
def index2():
nonlocal x
x = 2
index2()
print(x)
index()
以上是关于python入门之作用域的主要内容,如果未能解决你的问题,请参考以下文章
Python入门之函数结构——第3关:函数的使用范围:Python作用域
Spring课程 Spring入门篇 3-1 Spring bean装配(上)之bean的配置项及作用域
《C#零基础入门之百识百例》(四十九)类成员的作用域和生命期 -- 求N位自幂数