[英]Comparison of list to list of lists and return the other element from the list of list
我有一個清單 - 答案:
[0,1]
和另一份清單清單 - 問題:
[[0,ABC], [1,DEF], [3,XYZ]]
我如何比較2和返回
ABC, DEF
基於列表列表中第一個元素的答案中所有元素的比較?
如果第一項包含在answers
您可以使用列表理解並將第二項保留在questions
中:
answers = set([0,1])
[i[1] for i in questions if i[0] in answers]
# ['ABC', 'DEF']
注意:使用集合而不是列表有助於將復雜度從O(N*M)
到O(N)
如@RafaelC所建議的那樣, N
是問題的長度和M
的答案長度
既然你提到了pandas
pd.DataFrame([[0,'ABC'], [1,'DEF'], [3,'XYZ']]).loc[lambda x : x[0].isin([0,1])][1].tolist()
Out[494]: ['ABC', 'DEF']
嘗試:
[i[1] for i in lst2 if i[0] in lst1]
雖然我不明白這與熊貓有什么關系。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.