Опубликован: 21.07.2024 40
При работе со списками довольно часто требуется проверить наличие в списке повторяющихся элементов и удалить возможные дубликаты.
В Python существуют различные способы решения данной задачи, но наиболее простыми и эффективными вариантами являются удаление дубликатов из списка:
set()
;dict.fromkeys()
.set()
.Это наиболее популярный способ удаления повторяющихся элементов из списка, но него есть один недостаток - порядок следования элементов в списке теряется.
# исходный список
nums = [1, 3, 4, 1, 2, 3, 6, 7, 2, 4, 8, 9]
# использование set() для удаления дубликатов из списка
res = list(set(nums))
print(res)
[1, 2, 3, 4, 6, 7, 8, 9]
dict.fromkeys()
.Это наиболее быстрый способ удаления дубликатов с сохранением порядка следования элементов в исходном списке. Сначала из исходного списка удаляются дубликаты и возвращается словарь, у которого ключами являются элементы списка. Затем словарь преобразуется обратно в список.
# исходный список
nums = [1, 3, 4, 1, 2, 3, 6, 7, 2, 4, 8, 9]
# использование dict.fromkeys() для удаления дубликатов из списка
res = list(dict.fromkeys(nums))
print(res)
[1, 3, 4, 2, 6, 7, 8, 9]
Методы преобразования списка в строку и обратно
Подсчет количества вложенных списков в списке
Поэлементное суммирование списков (кортежей)
Преобразование строки числовых значений в список чисел
Комментариев нет.