Найти операторы в файле Python, которые могут быть выполнены - PullRequest
2 голосов
/ 02 января 2012

Я работаю над проектом с открытым исходным кодом, в котором я выполняю поиск операторов "print" и других таких операторов, которые не нужны в рабочей среде и могут привести к ошибке.Но я не хочу беспокоить пользователя, если есть закомментированный оператор печати или слово «печать» в строке документации или комментарии.Поэтому я пытаюсь найти те части скрипта Python, которые могут быть выполнены.Как я могу это сделать?

Ответы [ 3 ]

2 голосов
/ 02 января 2012

Используйте модуль ast и NodeVisitor для статического анализа кода программы.Таким образом, у вас не будет проблем с документами или комментариями.

1 голос
/ 02 января 2012

Для Python 2.6 или более поздней версии вы, вероятно, можете использовать модуль ast . Прочитайте код (в виде строки используйте ast.parse () , чтобы создать абстрактное синтаксическое дерево этого кода, а затем просмотрите код в поисках ast .Печать объектов, а затем преобразование их обратно в имя файла, кортежи с номерами строк.

0 голосов
/ 02 января 2012

Похожая тема здесь:

Проверка кода Python для определенных операторов

Вы можете получить еще несколько идей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...