我有兩個列表,用於組裝第三個列表。我將list_one與list_two進行了比較,如果list_one中的某個字段的值位於list_two中,則兩個來自list_two的值都將被複制到list_final中。如果一個字段的值從list_two中丟失,那麼我希望看到一個空值(無)放入list_final中。 list_final將有相同數量的項目,並在相同的順序list_one:Python 3二維列表理解
list_one = ['one', 'two', 'three', 'four', 'five', 'six', 'seven']
list_two = [['seven','7'], ['five','5'], ['four','4'], ['three','3'], ['one','1']]
list_final = []
list_final的值應爲:
[['one','1'], [None,None], ['three','3'], ['four','4'], ['five','5'], [None,None], ['seven','7']]
我已經得到最接近的是:
list_final = [x if [x,0] in list_two else [None,None] for x in list_one]
但這只是填充list_final None
。我已經看了一些教程,但我似乎無法圍繞這個概念包圍我的大腦。任何幫助,將不勝感激。
'list_two'應該更好地(或轉換成)一個字典,然後你做像'dict_two.get('七')''獲得''7'這使得列表理解更容易 –