按照你的列表理解方法,你可以用這個, # To have a skipped case#lst1=[[1,1,2],[1,2,4],[2,0,7],[2,2,10]]# Originallst1=[[1,1,2],[1,2,4],[2,1,7],[2,2,10]]lst2=[[1,1,0.2],[1,2,0.4],[2,1,0.7],[2,2,0.5]]output = [[x[0], x[1], x[2] + y[2]] for x,y in zip(lst1, lst2) if x[:2] == y[:2]]print(output) 在您的回答中,您使用zip正確地循環了兩個列表,但是隨后您將這兩個列表添加在一起(合并),而不是只添加最后一個元素的值。您還缺少檢查前兩個值是否相等的條件。 請注意注釋掉的列表中有一個將被跳過的條目。出于調試目的,它肯定比添加所有條目的方法要好。