我列出了具有特定值的a1, a2, ... , a16
。
例如:
a1 = [1, 17, 33, 49, 65, 81, 97]
然后我创建了一个使用这些列表的字典:
dct = {'0110': a1}
然后我尝试使用以下内容创建对变量的引用:
x = 1
x2 = 'a{0}'.format(x)
但是当我print(x2)
时,返回的值为a1
而不是[1, 17, 33, 49, 65, 81, 97]
如何获得原始a1
的实际输出?
答案 0 :(得分:1)
当您创建变量x2
即(x2 = 'a{0}.format(x)
)时 - 您正在创建一个新变量x2
作为包含变量名称字母的字符串,而不是实际参考到变量。
如果您想根据字符串获取变量的值,则需要访问globals()
字典
>>> a1 = 1
>>> a2 = 2
>>> mylist = [a1, a2]
>>> x = 1
>>> x2 = 'a{0}'.format(x)
>>> print(x2)
a1
>>> print(globals()[x2])
1