我需要創建一個包含一系列子列表的ORDERED列表。但我不知道如何迭代已知變量。python:動態創建並執行現有的變量名
下面是一個例子。比方說,我有以下子列表:
list_0 = [0, 1, 2]
list_1 = [3, 4, 5, 6]
list_2 = [7, 8, 9]
我試圖名單追加到一個更大的列表list_all
:
list_all = [ [0, 1, 2], [3, 4, 5, 6], [7, 8, 9] ]
所以我想通過變量名進行迭代,但我不確定這是可能的嗎?
list_all = [list_{num}.format(num=i) for i in range(3)]
# SyntaxError
這似乎是工作,如果list_all
包含已知變量的字符串,但我不需要變量顯然,我需要這些變量中的數據。
list_all = ['list_{num}'.format(num=i) for i in range(3)]
print list_all
# ['list_0', 'list_1', 'list_2']
所以我想問題是我該如何動態創建和執行python變量名?我需要這樣做,因爲列表數量隨着每個用例而變化。
你應該do是使用列表(或其他數據結構)而不是命名變量「foo_#」。然後你可以非常簡單自然地遍歷你的列表來做你想做的事情。 – dsh
不要創建變量'list_0','list_1',但是列表或字典'list [0]','list [1]' – furas