Удалить дубликаты из списка с сохранением порядка элементов в Python

Если удалить дубликаты в списке Python при помощи приведения его к множеству set(source_list) то будет изменён порядок следования элементов списка, так как для множества порядок неважен (это структура данных которая попросту содержит “кучу” уникальных элементов). Но что, если нам важен порядок? В Python, начиная с версии 3.7 есть относительно простой способ: термина

source_list = [1, 2, 5, 2, 3, 7, 7]
new_list = list(dict.fromkeys(source_list))

Для более низких версий можно использовать следующее:

def remove_dublicates_from_list_and_safe_order(source_list):
    res = []
    for i in source_list:
        if i not in res:
            res.append(i)
    return res 

0

Автор публикации

не в сети 1 месяц

art610

1000K
Lnovus Support
Комментарии: 0Публикации: 41Регистрация: 04-06-2022
Оцените материал
( Пока оценок нет )
Locus Novus
Добавить комментарий

Авторизация
*
*
Регистрация
*
*
*
Пароль не введен
Генерация пароля