Существует ли ограничение на количество значений, которое может содержать набор python?

Я пытаюсь использовать набор python как фильтр для идентификаторов из таблицы mysql. Набор python сохраняет все идентификаторы для фильтрации (около 30 000 сейчас), это число будет медленно расти с течением времени, и меня беспокоит максимальная емкость набора python. Есть ли ограничение на количество элементов, которые он может содержать?

1
nl ja de
Только с точки зрения нехватки памяти вашего компьютера. Насколько велики вы говорите?
добавлено автор David Robinson, источник
Скорее всего, вам будут ограничены системные ресурсы (доступная оперативная память), прежде чем они будут заблокированы языковыми ограничениями ...
добавлено автор Basile Starynkevitch, источник

3 ответы

Самое большое ограничение - объем памяти на вашем компьютере. Попробуйте строку:

s = set(xrange(10000000))

Это создает набор из 10 миллионов, намного больше, чем 30 000, которые вы приводите в качестве примера. На моем компьютере (Macbook Air с 4 ГБ памяти) это работает всего за несколько секунд. Независимо от вашей системы, вероятно, вы будете так же безупречны.

Конечно, есть абсолютно верхний предел, и задолго до этого ваш набор начнет замедляться из-за количества коллизий, а также необходимой замены памяти. Таким образом, важно, насколько большой будет этот набор. Если вы будете работать с более чем 10 миллионами элементов, вам может потребоваться вместо этого работать с базами данных.

6
добавлено
Очень интересно! Спасибо за понимание! Мои номера останутся под 100 000 идентификаторов в наборе, поэтому я думаю, что я доволен.
добавлено автор Asimov4, источник

Я не знаю, существует ли произвольный предел для количества элементов в наборе. Скорее всего, предел привязан к доступной памяти.

0
добавлено

Я не знаю, существует ли произвольный предел для количества элементов в наборе. Скорее всего, предел привязан к доступной памяти.

0
добавлено
Python
Python
7 654 участник(ов)

Уютный чат для профессионалов, занимающихся поиском питоньих мудростей. Как не получить бан: https://t.me/ru_python/577926

Python beginners
Python beginners
4 449 участник(ов)

Вопросы про Python для чайников. Cпам и троллинг неприемлем. Не злоупотребляйте стикерами. Частозадаваемые вопросы: https://github.com/ru-python-beginners/faq/blob/master/README.md Статистика тут: https://grstats.me/chat/x4qym2k5uvfkr3al6at7

pro.python
pro.python
1 090 участник(ов)

Сообщество разработчиков под Python Создатель: @rodgelius

Rude Python
Rude Python
971 участник(ов)

Python без „девочек”, здесь матерятся и унижают Django. Not gay friendly. Правила: t.me/rudepython/114107 @rudepython | t.me/rudepython

rupython
rupython
509 участник(ов)

Группа создана с целью оперативного получения ответов на возникающие вопросы по разработке на яп python, смежные темы, а также человеческого общения. Приветствую!

Python-programming
Python-programming
266 участник(ов)

Чат группы вконтакте https://vk.com/python_community