-3
def myLists(L):
    final_list=[] 
    sub_list=[]
    for each in L:       
        sub_list[:]=[]
        for num in range(each+1):            
            sub_list.append(num)
        #remove 0 from the list
        sub_list=sub_list[1:]    

        final_list.append(sub_list)        
    return final_list    

L=[1,2,4,5,7]
nl= myLists(L)
print nl

予想される出力は次のとおりです。

[[1], [1, 2], [1, 2, 3], [1, 2, 3, 4], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 6, 7]]

次のような出力が得られますが、サブリストに「0」が追加される理由がわかりません。

[[0, 1, 2], [0, 1, 2, 3, 4], [0, 1, 2, 3, 4, 5], [0, 1, 2, 3, 4, 5, 6, 7], [1, 2, 3, 4, 5, 6, 7]]
4

1 に答える 1

1

これを置き換えると:

#remove 0 from the list
sub_list=sub_list[1:]    

final_list.append(sub_list)

これとともに:

final_list.append(sub_list[1:])     

目的の出力が得られます。

于 2013-07-10T16:36:27.683 に答える