在python中合并两个相同的值

时间:2015-04-14 09:13:04

标签: python

例如,我有这个数字/ id的列表:

[1001, 1002, 1002, 1003, 1004]

如何合并或制作1002只有一个?所以它想这样:

[1001, 1002,1003, 1004]

我知道这非常基本,我一直在Google寻找解决方案,我所看到的只是如何合并dicts,这不是我需要的。我只需要合并那些相同的值。

3 个答案:

答案 0 :(得分:4)

您可以从列表创建集合并将其转换回列表:

>>> a = [1001, 1002, 1002, 1003, 1004]
>>> a = list(set(a))
>>> a
[1001, 1002, 1003, 1004]

如果订单很重要并且需要排序(即使在此示例中输出看起来有序,但在使用set时不保证结果排序),请使用:

>>> sorted(set(a))

答案 1 :(得分:0)

如果顺序无关紧要,您可以使用set内置函数,如下所示:

l = [1002, 1001, 1002, 1003, 1004]

list(set(l))

答案 2 :(得分:0)

集合没有重复值。您可以获取数字列表,将其转换为集合,然后将其转换回列表:

a = [1001, 1002, 1002, 1003, 1004]
b = list(set(a))

将导致'b'具有值

[1001, 1002, 1003, 1004]