我试着比较两个列表,找出那个位置和那个位置的变化。例如,以下是两个列表:

list1 = ['I', 'C', 'A', 'N', 'R', 'U', 'N']
list2 = ['I', 'K', 'A', 'N', 'R', 'U', 'T']

我希望能够输出位置并根据两个列表中的差异进行更改。正如你所看到的,一个字母可以在不同的索引位置重复多次。这是我试过的代码,但我似乎无法准确地打印出第二个位置。
for indexing in range(0, len(list1)):
    if list1[indexing] != list2[indexing]:
        dontuseindex = indexing
        poschange = indexing + 1
        changecharacter = list2[indexing]
for indexingagain in range(dontuseindex + 1, len(list1)):
    if list1[indexingagain] != list2[indexingagain]:
        secondposchange = indexingagain + 1
        secondchangecharacter = list2[indexingagain]

有没有更好的方法来解决这个问题或者对代码有什么建议?
我的预期产出是:
2    K
7    T

最佳答案

for index, (first, second) in enumerate(zip(list1, list2)):
    if first != second:
        print(index, second)

输出:
1 K
6 T

如果你想要你给出的输出,我们需要从1开始计数,而不是通常的0
for index, (first, second) in enumerate(zip(list1, list2), start=1):

07-28 10:42