python - 如何从嵌套函数修改变量?
问题描述
我在 python 中尝试了一些使用范围的东西,但遇到了一个小问题。我这里有这段代码。我想var
从嵌套函数中更改变量。
def func_1():
var = 1
def func_2():
var = 2
func_2()
print(var)
func_1()
什么时候func_1()
运行,var
还是1。可以在下编辑var
吗func_2
?
解决方案
您可以使用nonlocal
关键字:
def func_1():
var = 1
def func_2():
nonlocal var
var = 2
func_2()
print(var)
func_1() # prints 2
推荐阅读
- javascript - 加密后无法得到正确的字母
- kubernetes - K8s metric server - pod遥测更新频率太高
- php - 如何在 symfony 5 中加入两个表?
- php - 如何在 WordPress 自定义插件中重定向到外部站点?
- python - 在计算字符串中的字符数时忽略空格
- sql - 计算PostgreSQL中匹配条件的行的时间差
- android - ViewPager2 PagedList DiffUtil FragmentStateAdapter 中的片段重新创建时数据未刷新
- azure - AuthorizeForScopesAttribute 的内联等效项
- ruby-on-rails - nio4r gem 无法使用本机扩展构建(尝试安装 redmine_knowledgebase 插件)
- webpack - Karma Webpack - 每次都重新编译(真的)