У Python есть "компилируемый только" переключатель, такой как Perl -c?

Perl имеет переключатель -c для компиляции кода без его запуска. Это удобно для отладки ошибок компиляции в Perl.

Есть ли у Python аналогичный переключатель?

Ответы

Ответ 1

Вы можете сказать

python -m py_compile script_to_check.py

Однако это будет иметь побочный эффект создания скомпилированного файла script_to_check.pyc в том же каталоге, что и ваш script. Эта функция предназначена для ускорения последующего использования модуля, а не для обеспечения правильности вашего синтаксиса, хотя вы наверняка можете использовать его для этого.

Ответ 2

Еще лучше запустить pyflakes, pychecker или, возможно, pylint в коде. Они улавливают некоторые распространенные ошибки, которые не компилируются.

Ответ 3

Через 2.6, пакет компилятора. Эта страница не говорит, есть ли замена в 3.0, или если вы просто не можете этого сделать.