Форум программистов, компьютерный форум, киберфорум
Python: IDE, инструментарий
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.54/82: Рейтинг темы: голосов - 82, средняя оценка - 4.54
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755

Увеличиваем скорость Python и уменьшаем потребление памяти

21.07.2022, 07:52. Показов 24074. Ответов 281
Метки нет (Все метки)

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

https://nuitka.net/posts/pytho... ndows.html
https://nuitka.net/doc/download.html
https://pypi.org/project/Nuitka/

https://github.com/Nuitka/Nuitka
Build it using
python -m nuitka hello.py
Note

This will prompt you to download a C caching tool (to speed up repeated compilation of generated C code) and a MinGW64 based C compiler unless you have a suitable MSVC installed. Say yes to both those questions.
Создайте его, используя
python -m nuitka hello.py
Примечание

Вам будет предложено загрузить инструмент кэширования C (для ускорения повторной компиляции сгенерированного кода C) и компилятор C на основе MinGW64, если у вас не установлен подходящий MSVC. Скажите «да» на оба этих вопроса.
Nuitka люди используют, чтобы делать exe из кода Пайтон.

======================================== ======

https://github.com/pyston/pyston/releases

https://numba.pydata.org/numba... guide.html

https://downloads.python.org/pypy/

https://cython.org/
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.07.2022, 07:52
Ответы с готовыми решениями:

Убираем циклы, увеличиваем скорость! +тесты
Уважаемые форумчане, предлагаю вашему вниманию небольшую сборку тестов, смотрим и используем более быстрые методы Module Module1 ...

Потребление памяти
Здравствуйте! Озадачился оптимизацией потребления памяти, поэтому подскажите, каким способом можно узнать сколько некоторые части кода...

Потребление памяти
Добрый день. У меня есть код, который реализует загрузку изображений в таблицу. Я сделал две версии: 1) простая асинхронная загрузка...

281
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
10.03.2023, 19:12
Студворк — интернет-сервис помощи студентам
supmener, ты знаешь, что такое "линтер"? И как он связан с питоном?
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
10.03.2023, 19:16  [ТС]
Нет, не знаю.
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
10.03.2023, 19:17
За необучаемость и тупость тебя нужно гнать с форума.
0
740 / 622 / 151
Регистрация: 04.03.2022
Сообщений: 1,272
10.03.2023, 19:17
Рыжий Лис, Боюсь, что в его случае, как в анекдоте:

Не по теме:

Я знаю айкидо, тхэквондо, джиу-джитсу и много других страшных слов!

0
10.03.2023, 22:27

Не по теме:

Цитата Сообщение от Рыжий Лис Посмотреть сообщение
За необучаемость и тупость тебя нужно гнать с форума.
а потом говорят, что тут токсичное комьюнити пайтона)))

0
11.03.2023, 04:44

Не по теме:

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

Причём его туда даже затаскивать не пришлось бы. Сам бы зашёл. Достаточно положить посредине учебник по первому питону и пару дисков с ПО 90-х годов.

0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
11.03.2023, 04:48  [ТС]
Почитал про линтеры.
0
Эксперт .NET
 Аватар для Usaga
14789 / 9562 / 1367
Регистрация: 21.01.2016
Сообщений: 36,058
11.03.2023, 05:25
supmener, молодец. Ещё бы ты научился читать о вещах, ссылки на которые выкладываешь, заранее. Того гляди и до личинки программиста дорос бы.
1
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
11.03.2023, 22:09  [ТС]
...
Повышение производительности
Beautiful Soup никогда не будет таким же быстрым, как парсеры, на основе которых он работает. Если время отклика критично, если вы платите за компьютерное время по часам, или если есть какая-то другая причина, почему компьютерное время важнее программистского, стоит забыть о Beautiful Soup и работать непосредственно с lxml (http://lxml.de/).

Тем не менее, есть вещи, которые вы можете сделать, чтобы ускорить Beautiful Soup. Если вы не используете lxml в качестве основного парсера, самое время начать (http://bs4ru.geekwriter.ru/bs4... stallation). Beautiful Soup разбирает документы значительно быстрее с lxml, чем с html.parser или html5lib.

Вы можете значительно ускорить распознавание кодировок, установив библиотеку cchardet (http://pypi.python.org/pypi/cchardet/).

Разбор части документа (http://bs4ru.geekwriter.ru/bs4ru.html#id59) не сэкономит много времени в процессе разбора, но может сэкономить много памяти, что сделает поиск по документу намного быстрее.
0
5184 / 1074 / 150
Регистрация: 29.01.2013
Сообщений: 6,263
11.03.2023, 22:11
что же ты такое делаешь, чтобы тебе производительности BS не хватало?
1
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
11.03.2023, 22:40  [ТС]
Это возможно на случай, если большие объемы скачиваются через облако.
0
5184 / 1074 / 150
Регистрация: 29.01.2013
Сообщений: 6,263
11.03.2023, 22:42
большие объёмы через облако надо скачивать через API, а не колхозом с BS
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
12.03.2023, 19:47  [ТС]
https://www.crummy.com/softwar... bs4ru.html :
Разбор части документа
Допустим, вы хотите использовать Beautiful Soup, чтобы посмотреть на теги <a> в документе. Было бы бесполезной тратой времени и памяти разобирать весь документ и затем снова проходить по нему в поисках тегов <a>. Намного быстрее изначательно игнорировать все, что не является тегом <a>. Класс SoupStrainer позволяет выбрать, какие части входящего документ разбирать.
0
12.03.2023, 20:53

Не по теме:

вы ошибаетесь, господа, супменер нужен форуму! Иногда появляются люди, которые бросаются спорить что питон легкий или что программированию можно научить каждого. И тут мы будем просто давать ссылку на ТС и его темы, разбивая начисто все доводы оппонентов. Он живое доказательство того, что кому то просто не дано.

0
12.03.2023, 20:55

Не по теме:

Welemir1, хДД

0
13.03.2023, 11:23

Не по теме:

Welemir1, соглашусь, тут множество вариантов использования. Мне кажется, на топики супменера надо ссылать людей для поднятии самооценки, почитал чутка и оказывается что у тебя в жизни еще не так уж все и плохо. Можно будущим психотерапевтам давать как наглядное пособие. Пугать детей в школах, показывая во что может превратиться человек(ну тут есть сомнения) который не хочет учиться. Так что ребят, это универсальный инструмент, который нужно правильно использовать!

0
13.03.2023, 11:24

Не по теме:

Fudthhh, поддерживаю, согласен

0
Модератор
Эксперт Python
 Аватар для Fudthhh
2696 / 1602 / 513
Регистрация: 21.02.2017
Сообщений: 4,210
Записей в блоге: 1
13.03.2023, 11:27

Не по теме:


Можно даже его посты таскать к начальству на стол и очередной раз убеждать их в том что им очень повезло с тобой.



Добавлено через 29 секунд

Не по теме:


Глядишь премию выпишут...

1
13.03.2023, 12:53

Не по теме:

Fudthhh, его можно и как метрику использовать, для оценки скиллухи: сеньор, миддл, джун, супменер.

0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
13.03.2023, 18:49  [ТС]
...
Если вы хотите использовать NavigableString вне Beautiful Soup,
вам нужно вызвать метод unicode(), чтобы превратить ее в обычную для Python строку Unicode.
Если вы этого не сделаете, ваша строка будет тащить за собой ссылку на все дерево разбора Beautiful Soup,
даже когда вы закончите использовать Beautiful Soup. Это большой расход памяти.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.03.2023, 18:49

Потребление памяти
Подскажите, где можно посмотреть сколько памяти выделяет устройство под сторонние программы (например айпад1 - 80 мб)?

Потребление памяти
Добрый день. У меня есть программа, которая передает данные из StringGrida в таблицу SQL Server 2000. Используется ADOConnection,...

Потребление памяти
Приветствую всех! Прошу помощи в решении проблемы. Последнею неделю поигрывал в Subnautica и все было замечательно. После перерыва в пару...

Потребление памяти
В среднем, во сколько раз отличается потребление памяти у 32 и 64 битных версий явы? Используются Java EE, hibernate, spring...

Потребление памяти
Привет всем, подскажите парни.Это нормально? Мне кажется что то у меня большое потребление памяти.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
260
Ответ Создать тему
Новые блоги и статьи
Nekobox - outbounds[0].transport: unknown transport type: raw
damix 01.10.2026
Фикс ошибки Правым кликом по серверу -> отладочная информация -> edit Заменить "net": "raw", на "net": "tcp", Нажать кнопку reload.
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru