Сделайте flake8 различать неопределенные функции и импорт звезд - PullRequest
1 голос
/ 23 мая 2019

У меня довольно большой проект, который я пытаюсь очистить перед публикацией, но когда я запускаю flake8, я получаю тонны

'F405 <function> may be undefined, or defined from star imports: generic_functions`

Я мог бы избежать этого, заменив строку:

from generic_functions import *

в начале моего файла, но:

  1. Я буквально использую все функции там, так что я не понимаю, как более питонски превосходитьПредел в 80 символов для каждой функции:

     from generic_functions import (function1, function2, function3, function4, function5, function6, function7...)
    
  2. Выполнение вышеизложенного было бы утомительно, особенно если мне нужно добавить или удалить из десятков функций в generic_functions.py

Другой вариант - отключить предупреждение F405, но что, если функция действительно не определена?Было бы неплохо разрешить импорт звездочек, но при этом ловить что-то неопределенное.Есть ли способ сделать это?Я попытался добавить # noqa в строку импорта, но, похоже, это не помогло.

1 Ответ

1 голос
/ 23 мая 2019

Вы можете сделать следующее:

  1. Оставьте свой импорт как from generic_functions import *
  2. Запустите flake8 как flake8 --ignore=F405 file.py.Я действительно не знаю, почему # noqa не работает, но --ignore работает.
  3. Проверьте остальные возможные ошибки с помощью pylint.Pylint может определить, что <function> определено и импортировано из generic_functions.
...