从 Python 中的两个列表中获取一对不同的项目

Grab the pair of different items from two lists in Python

我正在尝试创建一个文件,其中仅包含两个列表中不同的项目对。我希望它有位置限制:L1 [0] != L2[0] --True(我想要它!)。 L1 1 != L21 --False(我不要)。 但是,我的代码将 L1 中的每个项目与 L2 中的每个项目进行比较,并返回不需要的对。

l1 =  ["pear", "papaya", "guava"]
l2=   ["grape", "pear", "guava"]

代码

我只想拥有:

pear: grape
papaya: pear

如果你可以假设长度..那么你可以简单地获取索引并比较相等的索引。

l1 =  ["pear", "papaya", "guava"]
l2=   ["grape", "pear", "guava"]

for index in range(len(l1)):
    if (l1[index] != l2[index]):
        print(f'{l1[index]}: {l2[index]}') 

假设您的列表长度相同,您可以使用 build-in 函数 zip,其中 return 生成对。

l1 =  ["pear", "papaya", "guava"]
l2=   ["grape", "pear", "guava"]

print([f'{i}: {j}' for i, j in zip(l1, l2) if i != j])

如果长度不同,建议使用组合方法。