说明
创新互联网站建设提供从项目策划、软件开发,软件安全维护、网站优化(SEO)、网站分析、效果评估等整套的建站服务,主营业务为网站设计制作、做网站,成都App定制开发以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。创新互联深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
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声明的变量不是局部变量,也不是全局变量。
以上就是python中nonlocal关键字的介绍,希望对大家有所帮助。更多Python学习指路:创新互联python教程
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
当前题目:创新互联Python教程:python中nonlocal关键字是什么
转载来源:http://www.shufengxianlan.com/qtweb/news38/531138.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联