在Python中使用另一个变量格式化变量

时间:2014-08-14 09:00:18

标签: python variables formatting

假设我有一个for循环。在每个循环之后,我得到一个我想要存储在列表中的结果。 我想写这样的东西,但它不起作用:

for i in range(50):
    "result_%d" %i = result

假设result是包含每个循环后结果的列表。 我想这样做是为了为每个结果提供一个不同的列表,所以我可以在循环结束后使用它们。

有没有办法做到这一点?

注意:我考虑将所有结果列表存储在一个大列表中。但代码不会那么重吗?注意到每个结果列表的大小为60。

1 个答案:

答案 0 :(得分:1)

  

我考虑过将所有结果数组存储在一个大数组中。但代码不会那么重吗?

在Python中,一切都是对象,名称和列表内容只是对它们的引用。创建包含对现有值的引用的新列表对象非常轻量级

不要尝试创建动态变量,只需将结果存储在另一个列表或字典中。

在这种情况下,这很简单:

results = []
for i in range(50):
    # do things
    results.append(result)
然后

results是一个列表,其中包含50个对其他列表对象的引用。这与引用这50个列表对象的50个名称没有什么不同,除了它现在 更容易解决它们。