Как убрать из списка дубликат элемента?

В Python существует несколько способов удаления дубликатов из списка. Вот несколько из них:

  1. С использованием множества (set):

    my_list = [1, 2, 2, 3, 4, 4, 5]
    unique_list = list(set(my_list))
    print(unique_list)

    Преобразование списка в множество удаляет дубликаты, а затем список снова преобразуется из множества.

  2. С использованием цикла и проверки наличия:

    my_list = [1, 2, 2, 3, 4, 4, 5]
    unique_list = []
    for elem in my_list:
        if elem not in unique_list:
            unique_list.append(elem)
    print(unique_list)

    Этот метод использует цикл для прохода по исходному списку и добавляет элемент в новый список только в том случае, если он еще не присутствует.

  3. С использованием метода dict.fromkeys():

    my_list = [1, 2, 2, 3, 4, 4, 5]
    unique_list = list(dict.fromkeys(my_list))
    print(unique_list)

    Метод dict.fromkeys() создает словарь, в котором ключи представляют уникальные элементы списка.

  4. С использованием библиотеки NumPy:

    import numpy as np
    
    my_list = [1, 2, 2, 3, 4, 4, 5]
    unique_list = list(np.unique(my_list))
    print(unique_list)

    Библиотека NumPy предоставляет функцию np.unique(), которая возвращает уникальные элементы массива.

Last updated