[英]Python: slicing a list into a list of lists using list comprehension
我有一個簡單的清單,像這樣:
mylist=[0,1,2,3,4,5,6,7,8,9]
我想切片創建列表列表。 預期的結果是:
sliced=[[0],[0,1],[0,1,2],[0,1,2,3],...]
第一次嘗試: sliced=[mylist[i:i+n] for i in range(0, len(mylist), n)]
錯誤結果: sliced=[[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]]
第二次嘗試: sliced=[[mylist[l]] for l in range(0,10,1)]
錯誤結果: sliced=[[0], [1], [2], [3], [4], [5], [6], [7], [8], [9]]
我該如何處理?
像這樣?
>>> mylist = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> sliced = [mylist[0:i] for i in range(1, len(mylist) + 1)]
>>> sliced
[[0], [0, 1], [0, 1, 2], [0, 1, 2, 3], [0, 1, 2, 3, 4], [0, 1, 2, 3, 4, 5], [0, 1, 2, 3, 4, 5, 6], [0, 1, 2, 3, 4, 5, 6, 7], [0, 1, 2, 3, 4, 5, 6, 7, 8], [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]]
進一步閱讀: 解釋Python的切片符號
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.