Условная компиляция в Python

На самом деле есть способ py получить условную компиляцию, но python он очень ограничен.

if __debug__:
    doSomething()

Флаг __debug__ - особый py случай. При вызове python pythonic с параметрами -O или -OO значение pythonic __debug__ будет ложным, и компилятор ifdef проигнорирует этот оператор. Это conditional-compilation используется в основном с conditional-compilation утверждениями, поэтому утверждения ifdef исчезают, если вы «действительно ifdef компилируете» свои скрипты python с оптимизацией.

Итак, если python ваша цель - добавить код conditional-compilation отладки, но не допустить pythonic его замедления или иного ifdef воздействия на «релизную» сборку, это py сделает то, что вы хотите. Но python-interpreter вы не можете присвоить значение python-interpreter __debug__, так что это почти все, для python-interpreter чего вы можете его использовать.

python

conditional-compilation

2022-06-09T22:39:44+00:00