导语:
本文主要介绍了关于python中nonlocal关键字是什么的相关知识,包括python中false的值,以及python静态变量这些编程知识,希望对大家有参考作用。
说明
1、nonlocal声明的变量既不是局部变量也不是全局变量,而是外层嵌套函数中的变量。
2、nonlocal定义的变量只会在被调用的子函数中起作用。
实例
x = 1
def func():
nonlocal x
x =2
print(x)
func()
print(x)
结果代码报错,SyntaxError: no binding for nonlocal 'x' found
为什么我只是把global换 成了nonlocal,却报错了?因为nonlocal是用于函数中的函数。
x = 1
def func():
x = 2
def subfunc():
nonlocal x
x = x + 1
print('subfunc内打印的值:%d' % x)
return x
print('func内打印的值:%d' % x)
return subfunc
func()
print('func外打印的值:%d' % x)
结果是:
func内打印的值:2
func外打印的值:1
nonlocal 关键字既不改变全局变量 x=1 的值,也不改变局部变量 x=2 的值。这意味着nonlocal声明的变量不是局部变量,也不是全局变量。
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ 如何在 Python 中更改 openpyxl 的字体和颜色08/21
- ♥ python3空闲是如何工作的12/04
- ♥ python copy模块中的函数使用10/05
- ♥ 如何在python中调用一个包含六个数字的数组11/25
- ♥ python中的Qt是什么10/17
- ♥ 如何从源代码安装 Python 第三方模块?11/18
内容反馈