我試圖根據header_count中的編號創建多個列表。下面的代碼應該生成3個列表,但是我得到一個語法錯誤。Python:根據計數創建多個列表
3210回答
這是我的你想要什麼解釋,我希望我猜對(你是不是很清楚)。
header_count = 4
headers = [[] for i in range(1, header_count)]
現在你可以使用這樣的:
headers[1].append("this goes in the first header")
headers[2].append("this goes in the second header")
你想要的是創建一個列表的列表:
header_count = 4
header = []
for i in range(header_count):
header[i] = []
在頭變量引用含有4列表名單。每個列表可以訪問如下:
header[0].append(1)
header[1].append("Hi")
header[2].append(3.14)
header[3].append(True)
'header [0] .append(1)'是一個索引異常。 – orlp 2011-03-18 22:59:42
這是行不通的,也許應該是: '爲我在範圍內(1,header_count): header.append([])' – 2011-03-18 23:12:07
你是什麼意思header_%s
? %
是mod運算符,當然你不能指定涉及運算符的表達式。這就像寫
a+b = c
您不能分配到a+b
,也不能分配給header_%s
。
您的意思是?
header_lists = [[] for i in range(1,header_count)]
如果需要列表名稱(因爲它來自於nightcracker回答您的評論似乎),你可以使用列表的字典:
header_count = 4
listDict = {}
for i in range(1, header_count):
listDict["header_"+str(i)] = []
然後你可以使用header_1,header_2查閱字典, header_3作爲鍵。
請不要鼓勵不好的做法。 – orlp 2011-03-18 22:59:01
這就是他似乎要求的!人們可以永遠不知道,也許是即使它是一個可怕的做法好奇心。 – 2011-03-18 23:03:08
字典是合適的數據結構,如果名稱是動態生成的,並有一定的信息內容超出了一個簡單的計數器(見回答以下問題[如何,可以任您動態創建變量 - 在 - python的-via-到-A-while循環(http://stackoverflow.com/questions/5036700/how-can-you-dynamically-create-variables-in-python-via-to-a-while-loop))。如果變量的名稱是多餘的一個簡單的計數或索引,那麼清單是合適的數據結構。 – JoshAdel 2011-03-19 00:23:53
- 1. 如何根據檢索的數據創建多個列表?
- 2. 根據ssrs報告中的多個列創建小計
- 3. 熊貓數據框中:根據多個條件創建列
- 4. SQL根據計算值創建新列
- 5. SQL根據多個表中的數據創建查詢
- 6. 比較數據列表,根據條件創建新列表,Mathematica
- 7. 根據多列條件在同一個表內創建「集合」
- 8. 根據用戶輸入動態創建多個下拉列表
- 9. 根據另一個列表的值創建一個列表c#
- 10. 在Python中爲多個列表創建統計字典?
- 11. 根據秩條件創建Groupby列Python
- 12. 使用多個陣列創建計數
- 13. 根據列值創建列
- 14. Python熊貓根據列計算行數
- 15. 根據sql中的另一個表列值創建表列
- 16. 如何根據功能從另一個列表創建列表?
- 17. R - 根據計數器值創建行
- 18. 根據Informatica中的計數創建行
- 19. 創建具有根據計數器環
- 20. 如何從另一個列表中創建數據計算列
- 21. 根據對象列表創建整數元素列表
- 22. 根據值的計數排列列表
- 23. 創建多列python
- 24. 多租戶 - 預先創建表或根據需要創建表?
- 25. 計算列,根據多行
- 26. 根據多列的邏輯運算創建一個新列
- 27. Dynamicaly根據列值創建表
- 28. 如何根據PowerBI中的不同表創建計算列?
- 29. 根據數據框中的兩列創建一個新列
- 30. Python - 創建包含多個子列表的列表
如果你要產生3只列出,這是非常奇怪的設置'header_count'到4最好設置'header_count = 3'和迭代'因爲我在的xrange(header_count)'。 – 2011-03-18 23:10:01