2015-06-26 3 views
6

Я выполняю проверки PEP8 в python, используя библиотеку python flake8. У меня есть оператор импорта в качестве __init__.py файла в одном из моих суб-модулей, выглядит следующим образом:python pep8 класс в init импортирован, но не используется

from .my_class import MyClass 

Причина у меня есть эта строка в файле инициализации так, что я могу импортировать MyClass из субмодулем как from somemodule import MyClass вместо того, чтобы писать from somemodule.my_class import MyClass.

Я хотел бы знать, можно ли поддерживать эту функциональность при исправлении нарушения PEP8?

ответ

20

Это не является нарушением PEP8. Я просто делаю это:

from .my_class import MyClass # noqa 

Edit: Еще одна возможность заключается в использовании __all__. В этом случае, flake8 понимает, что происходит:

from .my_class import MyClass 

__all__ = ['MyClass',] 
+2

Рекомендация использовать '__all__' сработала! Спасибо. – Salvius