我有一个字符串列表:
A = ['a', 'b', 'c', 'd']
我想有一个变量引用列表B:
B = [a, b, c, d]
我该怎么做?
EDIT1:
我有
df_wgt_dict["Freq"+vars_dict['varName'+str(I)]]
这里的范围是1到4。
我想要一个如下列表:
[df_wgt_dict["Freq"+vars_dict['varName'+str(1)],df_wgt_dict["Freq"+vars_dict['varName'+str(2)],df_wgt_dict["Freq"+vars_dict['varName'+str(3)],df_wgt_dict["Freq"+vars_dict['varName'+str(4)]]
答案 0 :(得分:-1)
A = ['a', 'b', 'c', 'd']
B = []
for s in A:
temp_storage = exec('%s = %d' % (s, my_value))
B.append(temp_storage)
这将使用变量而不是字符串
更改列表B中的列表A.答案 1 :(得分:-1)
你不能直接这样做。但是,如果要对这些变量执行某些操作,仍可以使用关键字exec
或函数eval
。这是两个不同的东西,产生不同的结果,但在这里你可以使用on或其他没有问题。
例如,这将打印5
a = 5
exec 'print a'
做一切你想要的简单技巧:
a = 5
b = 6
c = 2
d = 3
L = ['a', 'b', 'c', 'd'] # the input list
M = list() # the result list
for e in L:
exec 'M.append('+e+')' # or eval('M.append('+e+')')
print M
这将打印
[5, 6, 2, 3]
注意:这不会创建变量引用列表,而是在调用此变量时列出变量值。如果您想要更新值,则必须再次调用它。