-2
A
回答
5
使用列表理解:
如果元組只包含1項:
>>> lis = [[(2L,)], [(3L,)]]
>>> [ y[0] for x in lis for y in x]
[2L, 3L]
如果元組包含超過1項:
>>> [z for x in lis for y in x for z in y]
[2L, 3L]
這將爲任何嵌套的工作量:
from collections import Iterable
def flatten(collection):
for element in collection:
if isinstance(element, Iterable) and not isinstance(element, basestring):
for x in flatten(element):
yield x
else:
yield element
>>> list(flatten(lis))
[2L, 3L]
>>> lis = [[(2L,)], [(3L,(4,(5,)))]]
>>> list(flatten(lis))
[2L, 3L, 4, 5]
0
使用列表理解和長轉換爲int:
>>> L = [[(2L,)], [(3L,)]]
>>> result = [int(y[0]) for x in L for y in x]
>>> result
[2, 3]
0
爲了擺脫尾隨升,使用int()
:
>>> L = [[(2L,)], [(3L,)]]
>>> [int(i[0][0]) for i in L]
[2, 3]
0
>>> d = [[(2L,)], [(3L,)]]
>>> map(lambda x: x[0][0], d)
[2L, 3L]
+2
我不認爲在列表理解更具可讀性的地方使用'map'是不錯的主意。 – Elazar
+0
等價列表理解:'[x [0] [0] for x in d]'。 – michaelb958
相關問題
- 1. 如何在Python中將這個列表/元組轉換到以下列表中?
- 2. 將列表轉換成元組有3個元素的列表?
- 3. 將元組列表轉換爲Python中的多個列表
- 4. Python:將列表列表轉換爲元組元組
- 5. Python將列表列表轉換爲元組列表
- 6. Python將列表的列表轉換爲元組列表
- 7. 將元組列表轉換爲列表?
- 8. 將轉換列表轉換爲水星中的元組列表
- 9. 永久轉換元組列表在Python
- 10. 將列表變成一個元組python
- 11. Python - SqlAlchemy:將元組列表轉換爲原子值列表
- 12. Python將元組列表轉換爲嵌套字典列表
- 13. 使用Python將元組列表轉換爲嵌套列表
- 14. Python:將列表元組的嵌套列表轉換爲字典?
- 15. PYTHON:轉換的元組列表轉換成字典
- 16. 在Python中將列表列表轉換爲數組
- 17. 將字符串元組列表轉換爲元組列表
- 18. F Sharp將元組列表轉換爲映射元組列表
- 19. 將元組列表轉換爲遞歸列表元組
- 20. 將元組列表轉換爲列表列表
- 21. 嘗試將元組列表轉換爲列表列表
- 22. 將元組轉換爲元素列表
- 23. 如何元組(含4元)的列表轉換成列表
- 24. 組列表轉換成由列表
- 25. Python的 - 轉換元組列表的INT
- 26. 在python中將列表和列表的列表轉換爲csv
- 27. Python-將兩個列表組合成一個列表列表
- 28. 在Python中將列表轉換爲元組
- 29. 如何將這個JSON數組轉換成列表
- 30. Python的轉換嵌套的元組的列表列出元組
這是水平嵌套的是已知的和恆定的? – oleg
閱讀你的問題,答案很可能是'[lst [0] [0] [0],lst [1] [0] [0]]''。如果這不是你想要的,請添加一些細節。 – Elazar