我有一个字符串列表:
list1 = ['array1', 'array2', 'array3']
我希望将其元素用作其他列表的名称,如(作为概念示例):
list1[0] = [1, 2, 3]
我知道这个分配没有任何意义,但它只是为了展示我需要的东西。
我已经找了很多,但没有找到一个方便的例子。如果我理解得当,这不是正确的方法,最好是使用dictionaries
。但是,我从未使用过字典,所以我需要一些例子。
答案 0 :(得分:1)
使用字典:
list1 = {'array1': [0, 1, 2], 'array2': [0, 3], 'array3': [1]}
然后像这样访问它:
list1['array1'] # output is [0, 1, 2]
动态填充词典:
list1 = {'array1': []}
list1['array1'].append(1)
答案 1 :(得分:1)
aDict = { name: 42 for name in list1 }
这会给你:
{'array3': 42, 'array2': 42, 'array1': 42}
如果您想订购它:
from collections import OrderedDict
aDict = OrderedDict((name, 42) for name in list1)
答案 2 :(得分:1)
您可以使用exec
这样做:
list1 = ['array1', 'array2', 'array3']
x=list1[1]
exec("%s = %d" % (x,2))
print array2
结果如下:
2
但是当你可以使用比字典更安全的东西时,永远不要使用exec
,这可能很危险!