从列表[1,2,3,4]
我想获得[[1],[1,2],[1,2,3],[1,2,3,4]]
。我不确定这是什么叫(如果有的话),或许类似跟随子集?
我目前的做法是:
def following_subsets(parts):
following_subsets = []
for i in range(1, len(parts)):
following_subsets.append(parts[:-i])
return following_subsets
有没有更有效的方法来做到这一点,或者更加pythonic的方式?也许以某种方式使用迭代器?
答案 0 :(得分:4)
>>> l = [1, 2, 3, 4]
>>> [l[:i+1] for i in range(len(l))]
[[1], [1, 2], [1, 2, 3], [1, 2, 3, 4]]