怎么批量 global 一堆变量
本帖最后由 _荟桐_ 于 2020-4-24 18:22 编辑在一个函数里批量创建了一堆变量,代码:
def test():
for i in range(10):
exec('test_' + str(i) + '=' + str(i))
怎样把他们在全都global了{:10_266:}
不是 global test_1,test_2 这样的
或者用一个 不用 'globa' 就能在函数外访问变量的方法就行 ^_^ 为什么不是 global test_1,test_2 这样的 def test():
for i in range(10):
exec(f'global test_{i}\ntest_{i}={i}') 永恒的蓝色梦想 发表于 2020-4-24 18:31
为什么
可能有 n 个创建的变量(n是一个不确定的正整数)l
如果直接global test_1,test_2,test_3,......
就很难完成 _荟桐_ 发表于 2020-4-24 18:38
可能有 n 个创建的变量(n是一个不确定的正整数)l
如果直接global test_1,test_2,test_3,......
就很 ...
调用的时候传个全局变量字典>>> def func(vars):
vars.update({'a':6,"b":7,"c":8,"fa":9})
>>> fa
Traceback (most recent call last):
File "<pyshell#46>", line 1, in <module>
fa
NameError: name 'fa' is not defined
>>> func(locals())
>>> fa
9 满意请选最佳{:10_297:} 永恒的蓝色梦想 发表于 2020-4-24 18:41
调用的时候传个全局变量字典
真 · 大佬
两个方法......
页:
[1]