如何在Python中动态创建变量名称?

时间:2018-02-05 12:31:47

标签: python variables naming

我在python中有一个函数

def func(dataFrame,country,sex):
    varible_name=dataFrame[(dataFrame['land']==country) & (dataFrame['sex']==sex)]

现在,例如,我调用此函数

func(dataFrame,'England','M')

我希望变量名称为England_M而不是variable_name。

1 个答案:

答案 0 :(得分:1)

你不能用Python做到这一点。 你可以做的是将结果存储在一个字典下,例如key = England_M

在您的情况下,您可以执行以下操作:

def func(dataFrame,country,sex):
    tmp = dataFrame[(dataFrame['land']==country) & (dataFrame['sex']==sex)]
    variable_name = "{c}_{s}".format(c=country, s=sex)
    return dict(variable_name=tmp)

现在使用它:

results = func(dataFrame, "England", "M")
print(results['England_M'])