Опубликован: 19.10.2023 109
В Python для поиска наиболее часто встречающегося элемента в списке или кортеже используется следующий трюк:
max(iterable [, key])
, у которой в качестве второго аргумента key
указывается функция подсчета количества повторяющихся элементов списка. # исходный список
list = [1, 2, 3, 4, 5, 5, 6, 6, 7, 6, 7, 7, 7, 8, 8, 9, 10]
frequent = max(list, key=list.count)
print(frequent)
7
Аналогичным способом можно найти:
key
функцию sum()
для подсчета суммы элементов вложенных списков;len()
.# исходный список
list = [[1, 2, 3], [4, 5], [1, 3, 4, 5], [10, 20]]
# выбираем список с наибольшей суммой элементов
max(list, key=sum)
[10, 20]
# выбираем список с наибольшим количеством элементов
max(list, key=len)
[1, 3, 4, 5]
Методы преобразования списка в строку и обратно
Фильтрация элементов итератора с помощью bool-списка функции itertools.compress()
Пропуск не нужных элементов последовательности с помощью itertools.dropwhile()
Комментариев нет.