четверг, 22 июля 2010 г.

Python: How to check syntax before run script

В очередной раз опечатался в названии переменной в питоне и пришлось повторять пробный запуск скрипта. Опечатки - ошибки детские, но требуют много времени на отладку. А в случаях кода, который редко выполняется, например обработка ошибок, опечатка может вылезти в самый неподходящий момент.
Решения два, правильное - писать тесты покрывающие всё и вся, ну или чем то проверять синтаксис. Проверка синтаксиса не помешает даже при наличии тестов, т.к. выполняется очень быстро и не требует, специальных телодвижений.

Мне понравился модуль Pyflakes. Всё очень просто и лаконично.

Вот в таком коде:
import unusedlib

def func():
 res = unused * 5 
 return res

находит:
test.py:2: 'unusedlib' imported but unused
test.py:5: undefined name 'unused'


Меня очень даже устраивает.

Комментариев нет: