Возможный дубликат:
Замедляют ли комментарии интерпретируемый язык?
Будет ли заметное снижение производительности при выполнении большого файла .py, если правильно прокомментировано более 75% строк кода?
Возможный дубликат:
Замедляют ли комментарии интерпретируемый язык?
Будет ли заметное снижение производительности при выполнении большого файла .py, если правильно прокомментировано более 75% строк кода?
No
Когда вы запускаете python, первым шагом является преобразование в байт-код, которым являются эти .pyc
файлы. Комментарии из них удаляются, так что это не имеет значения*.
Если вы запустите с параметром -O
или -OO
, python создаст «оптимизированные» файлы pyo
, которые незначительно быстрее, если вообще быстрее. Основное отличие в том, что:
-O
утверждением удаляются,-OO
строки __doc__
удаляются. Учитывая, что они иногда нужны, работать с -OO
не рекомендуется.* ниже указано, что .pyc
файлы сохраняются только для модулей. Таким образом, исполняемый файл верхнего уровня необходимо перекомпилировать при каждом запуске. Этот шаг может замедлить работу массивного исполняемого файла Python. На практике большая часть кода должна находиться в модулях, поэтому это не проблема.
.pyc
файлов, это будет единоразовая стоимость, а не стоимость выполнения.
- person larsks; 07.05.2012
.py
файл, вызываемый непосредственно из командной строки, написать для него оболочку, которая просто импортирует большой скрипт, не составит труда. Затем большой скрипт компилируется в .pyc
, и при каждом запуске анализируется только однострочная оболочка.
- person kindall; 07.05.2012
-O
удаляет утверждения и устанавливает __debug__ = False
, но не удаляет строки документации, это делает только -OO
. Таким образом, запуск с -O
вреден только при отладке (или неправильном использовании утверждений, что делают некоторые кодовые базы).
- person ; 07.05.2012