删除数组中重复的元素(Python)

删除一个给定数组中重复的元素:

1、

可以利用set函数:

num = [1,2,1,4,5]
print(list(set(num)))
2、

使用字典函数:

num = [1,2,1,4,5]
b = {}
c = b.fromkeys(num) #fromkeys(num)是用num中的元素作为键,并给每一个键默认赋值None。
print(list(c.keys()))
3、
def deleteSameNum(num):
    num.sort()
    last = num[-1]
    for i in range(len(num)-2, -1, -1): #len(num)-2是倒数第二个数,第一个-1为了生成到0下标
        if last == num[i]:
            del num[i] #删除后位置i处的元素后,其后一个相同的元素又补到了i位置
        else:
            last = num[i]
    return num


if __name__=="__main__":
    num = [1,2,1,4,5]
    print(deleteSameNum(num))

猜你喜欢

转载自blog.csdn.net/qq_34840129/article/details/80811693