如何删除彼此相关的2个重复项(PYTHON)

时间:2019-03-19 12:04:04

标签: python scripting listobject

阅读了很多标题后,我无法解决以下问题。有人能帮我吗?

例如,我有两个相互关联的列表(list_I和list_II)。

list_I = [123, 453, 444, 555, 123, 444]

list_II = [A, A, B, C, A, B]

我希望得到的是:

New_list_I = [123, 453, 444, 555]


New_list_II = [A , A, B, C]

我将这两个列表用作电子邮件的正文部分。这就是为什么我需要2个单独的列表(但相互关联)的原因。

我现在可以发送电子邮件。但是由于重复问题,它无法按我的意愿进行。

P.S:我希望我能很好地解释问题,但是任何问题都请不要犹豫问我。

2 个答案:

答案 0 :(得分:1)

看起来很适合dict的工作:

list_I = [123, 453, 444, 555, 123, 444]    
list_II = ['A', 'A', 'B', 'C', 'A', 'B']

res = {}    
for elem, elem2 in zip(list_I, list_II):
    res[elem] = elem2    
print(res)

输出

{123: 'A', 453: 'A', 444: 'B', 555: 'C'}

如果需要列表,则可以将字典中的键和值分开:

print([k for k,v in res.items()])
print([v for k,v in res.items()])

输出

[123, 453, 444, 555]
['A', 'A', 'B', 'C']

答案 1 :(得分:0)

list_I = [123, 453, 444, 555, 123, 444]
list_II = ['A', 'A', 'B', 'C', 'A', 'B']

New_list_I = []
New_list_II = []

for index, item in enumerate(list_I):
    if item not in New_list_I:
        New_list_I.append(item)
        New_list_II.append(list_II[index])

print(New_list_I)
print(New_list_II)

输出:

[123, 453, 444, 555]
['A', 'A', 'B', 'C']