Skip to main content
 首页 » 编程设计

python之在函数内部动态创建变量

2025年05月04日16虾米姐

我想在字典中的函数内创建变量。

假设我有一本字典,bar:

bar = { 
    'a': 1,  
    'b': 2,  
    'c': 3 
} 

那去:

def foo(): 
    a = 1 
    b = 2 
    c = 3 
 

我想创建新的变量,变量名作为bar的键(a, b, c),然后将变量的值设置为值相应键的。

所以,最后,它应该类似于:

bar = { 
    k: v 
} 
# --->  
def foo(): 
    k = v  

这可能吗?如果是这样,怎么做到的?

请您参考如下方法:

你的问题不清楚。

如果你想在 foo 未运行时“设置”所述变量,不,你不能。还没有框架对象来“设置”局部变量。

如果你想在函数体中这样做,你不应该(检查 python documentation 中的 locals())。

但是,您可以执行foo.__dict__.update(bar),然后您甚至可以从函数内部访问这些变量,如 foo.a、foo .b 和 foo.c。问题是:您为什么要这样做,为什么没有一个类更适合您的目的?