@Xproz
Python Student

Для чего нужны множества в Python?

Здравствуйте!
Если со списками, кортежами и словарями, а также их практическими применениями все понятно, то суть множеств для меня не совсем ясна. Где можно применить этот "рандомный список" с не повторяющимися элементами?
Я сначала думал, может он весить должен меньше, чем список, но проверив с помощью __sizeof__(), оказалось, что множество превышает список в весе аж в несколько раз. 123, 456, "hello" = списком весит 64, множеством 200.

Но речь вообщем-то о том, где можно практически применять это множество.
Буду благодарен!
  • Вопрос задан
  • 138 просмотров
Решения вопроса 1
fox_12
@fox_12 Куратор тега Python
Расставляю биты, управляю заряженными частицами
Навскидку:
- для быстрого удаления дубликатов, поскольку множества могут содержать только уникальные элементы
- для выполнения математических операций объединения, пересечения, разности множеств

5e503f571b5b1835632879.png

5e5040755bcb8877629316.png
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
Множества - это не "рандомный список". Почитайте. Нужны они для быстрых операций с их членами - пересечением, объединением, разностью. У Скиены, если мне не изменяет память, был пример оценки скорости поиска пересечения. Для множеств из миллиона элементов это заняло 0,02 микросекунды, для соразмерных списков 15 минут.
Ответ написан
@kunjut19
как и сказал Владимир. Нужно хранить уникальные данные и не важно в каком порядке? Используйте множества - с ними быстрее работать. Такими данными могут быть хэши или перечисление всех слов, встречаемых в тексте.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы