【问题标题】:How can I remove duplication of 2 separate which is interrelated with each other (PYTHON)如何删除相互关联的 2 个单独的重复项(PYTHON)
【发布时间】:2019-08-09 23:01:17
【问题描述】:

看了这么多标题,还是没能解决下面的问题。有人可以帮助我吗?

例如,我有 2 个相互关联的列表(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 : 我希望我能很好地解释问题,但有任何问题请随时问我。

【问题讨论】:

  • 看看下面发布的答案是否有帮助?

标签: python scripting listobject


【解决方案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']

【讨论】:

【解决方案2】:
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']

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-12-18
    • 1970-01-01
    • 2011-08-22
    • 1970-01-01
    • 2014-01-20
    • 1970-01-01
    • 1970-01-01
    • 2011-01-04
    相关资源
    最近更新 更多