我試圖根據(jù)if條件將列表追加到字典中。我為此問題編寫了一個(gè)工作函數(shù),但我想以列表理解的形式編寫該程序。以下功能按月組織所有曲目。結(jié)果將是一個(gè)字典,以月為鍵,音軌為值。[[j for j in lst2] for i in month if j[-2] == i] #I tried this list comprehension code for my function given below列名稱[位置,曲目名稱,藝術(shù)家,流,Datetime.object,區(qū)域,月份,日期] Input : #my working code[['1','Starboy','The Weeknd','3135625',datetime.datetime(2017, 1, 1, 0, 0), 'global',1,1], ['2','Closer','The Chainsmokers','3015525',datetime.datetime(2017, 1, 1, 0, 0), 'global',1,1] ['3','Party Monster','The Weeknd','829599',datetime.datetime(2017, 2, 2, 0, 0),' global',2,2]]def organized(lst2): month = [1,2] edict = {} for i in month: elst = [] for j in lst2: if j[-2] == i: elst.append(j) edict[i] = elst return edictoutput{1: [['1', 'Starboy', 'The Weeknd', '3135625', datetime.datetime(2017, 1, 1, 0, 0),'global', 1, 1], ['2', 'Closer', 'The Chainsmokers', '3015525', datetime.datetime(2017, 1, 1, 0, 0), 'global', 1, 1]] 2:[[‘3’, 'Party Monster', 'The Weeknd', '829599', datetime.datetime(2017, 2, 2, 0, 0), 'global', 2, 2]]}
1 回答

慕妹3146593
TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超9個(gè)贊
您的輸出是dict,因此您需要一個(gè)dict理解(list嵌套在其中的理解):
def organized(lst2):
month = [1, 2]
return {i: [j for j in lst2 if j[-2] == i] for i in month}
添加回答
舉報(bào)
0/150
提交
取消