Ответы пользователя по тегу Python
  • Где еще кроме веба используется Python?

    xanep
    @xanep
    Везде, где удобно использовать скриптовый язык. Например, научное моделирование, обработка данных (особенно текстовых), написание логики приложений (часто в играх), continuous integration (автоматизированное тестирование, скрипты для развертывания инфраструктуры). Есть еще множество применений, которые так сходу не вспомнить.
    Ответ написан
    Комментировать
  • Как в Python можно хранить список в памяти, чтобы он съедал меньше этой самой памяти

    xanep
    @xanep
    Мой тест показал, что 1 млн строк (10-13 символов) в питоновском списке занимает около 40 МБ в памяти. Что многовато, но не так уж плохо.

    Протестировал ctypes вот так:
    >>> from ctypes import *
    >>> FixedSizeStr = c_char*13
    >>> MillionStrings = FixedSizeStr*1000000
    >>> ms = MillionStrings( *(FixedSizeStr(*str(i)) for i in xrange(1000000)))
    Это +215 МБ?!..

    Предложенный выше вариант с кодированием в число, хоть и экономит место, но существенно сожрет производительность, если вы будете пробегаться по этому списку и сравнивать с другой строкой.

    Так что если вам дейстивтельно нужна оптимизация, то придется писать на С/С++ свой класс и экспортировать в питон. Все остальное будет полумерой.
    Ответ написан
    Комментировать