我正在使用一個程序,結果格式爲 [(11,3.22),(12,4.6),(9,2.4)] 我需要提取第一部分以更改它命名並附加第二個值並將其存儲在csv文件中。我如何提取子部分的每個部分?從python列表中提取數據
0
A
回答
1
>>> l = [(11,3.22),(12,4.6),(9,2.4)]
「需要提取第一部分」 -
>>> l[0]
(11, 3.22)
「將其更改爲名稱」 -
>>> l[0] = ('x', 'y')
>>> l
[('x', 'y'), (12, 4.6), (9, 2.4)]
「附加第二值」 -
>>> l[0] = dict(zip(('x', 'y'), l[1]))
>>> l
[{'y': 4.6, 'x': 12}, (12, 4.6), (9, 2.4)]
以CSV格式存儲很容易,請點擊此處查看示例 - http://www.pythonforbeginners.com/systems-programming/using-the-csv-module-in-python/
0
我假設您的意思是對於列表中的每個元組,使用從整數映射的字符串替換第一個元素。
您可以使用列表理解這樣做的:
>>> id_to_str_map = {11:"foo", 12:"bar", 9:"baz"}
>>> l = [(11,3.22),(12,4.6),(9,2.4)]
>>> result = [(id_to_str_map[idx], value) for (idx, value) in l]
>>> print result
[('foo', 3.22), ('bar', 4.6), ('baz', 2.4)]
使用CSV標準庫模塊所推薦的@theharshest是最穩健的選擇。爲Python 2.7標準庫文件:http://docs.python.org/2/library/csv.html
如果你有一個大的數據集工作,那麼它很可能更好,而不是用生成器表達式爲你的每一行寫出CSV文件懶洋洋地執行映射。
import csv
id_to_str_map = {11:"foo", 12:"bar", 9:"baz"}
l = [(11,3.22),(12,4.6),(9,2.4)]
with open("blah.csv", "wb") as csvfile:
csv_writer = csv.writer(csvfile)
for row in ((d[idx], value) for (idx, value) in l):
csv_writer.writerow(row)
相關問題
- 1. 從Python列表中提取數字
- 2. 從元組列表中提取數據
- 3. 從列表中提取數據
- 4. 從嵌套列表中提取數據
- 5. 無法從列表中提取數據
- 6. 從列表視圖中提取數據
- 7. 從列表視圖中提取數據
- 8. 從json.loads列表中提取數據
- 9. 從列表中提取數據R
- 10. 從列表中提取數據[R]
- 11. 從HTML表格列中提取數據
- 12. 從Python中的數據框中的列提取數據
- 13. Python:從值列表中提取值
- 14. 如何從列表python中提取值?
- 15. Python的 - 從列表中提取元素
- 16. Python:從清單列表中提取
- 17. Python:從DataFrame列中提取數組
- 18. 從HTML表格提取一列數據w/Python?
- 19. 如何提取從列表數據在Python
- 20. 的Python:從整數列表中提取一個值,並列出
- 21. python從netCDF中提取數據
- 22. python - 從mp3文件中提取數據
- 23. beatifulsoup從網頁中提取數據python
- 24. Python從文本行中提取數據
- 25. 用Python從xml中提取數據3
- 26. Python 3.從json中提取數據
- 27. 從JavaScript中提取數據(Python Scraper)
- 28. 從Python中獲取請求中的數據提取數據
- 29. R:從CSV文件數據列表中提取數據幀
- 30. 從表中提取值python
你是什麼意思? –