我寫了一個函數,它獲取兩個參數:一個列表和一個值出現在先前給出的列表(sep)中。該函數的目的是拆分給定的列表,並返回列表中的多個列表,而不用書寫功能的第二個參數中指定的值。所以def def_list([1,2,3,2,1],2)--->結果將會是[[1],[3],[1]]。分離的功能很好,但結果會保留分隔列表中函數(sep)的第二個值。我想不出如何解決這個問題。在此先感謝用分隔符分割列表
def split_list(l, sep):
occurence = [i for i, x in enumerate(l) if x == sep]
newlist=[]
newlist.append(l[:occurence[0]])
for i in range(0,len(occurence)):
j=i+1
if j < len(occurence):
newlist.append(l[occurence[i]:occurence[j]])
i+=1
newlist.append(l[occurence[-1]:])
return newlist
謝謝羊皮紙! :) – 2014-10-28 14:14:36