Что делает оптимизация Python (-O или PYTHONOPTIMIZE)?

В документации только сказано, что интерпретатор Python выполняет «базовую оптимизацию», не вдаваясь в подробности. Очевидно, это зависит от реализации, но есть ли способ понять, какие типы вещей можно оптимизировать, и какую экономию времени выполнения он может обеспечить?

Есть ли обратная сторона использования -O?

Единственное, что я знаю, это то, что -O отключает assert , но, по-видимому, этого не следует используйте assert для вещей, которые все еще могут пойти не так в процессе производства.

41
задан max 23 January 2011 в 22:52
поделиться