У Python есть флаг -O
, с которым вы можете выполнить интерпретатор. Опция будет генерировать "оптимизированный" байт-код (записанный в .pyo файлы) и заданный дважды, он отменит docstrings. На странице руководства Python:
-O Включить основные оптимизации. Это изменяет расширение имени файла для скомпилированных (байткодов) файлов с .pyc на .pyo. Учитывая дважды, вызывает отбрасывание docstrings.
Эта опция имеет две основные функции, которые я вижу:
-
Удалите все утверждения assert. Это торгует защитой от коррумпированного состояния программы для скорости. Но разве вам не нужна тонна утверждений для этого, чтобы иметь значение? У вас есть код, в котором это стоит (и разумно?)
-
Разделите все docstrings. В каком приложении использование памяти настолько критично, что это победа? Почему бы не толкнуть все в модули, написанные на C?
Какая польза от этой опции? Имеет ли он реальную ценность?