I\'m doing PEP8 checks in python using the python flake8 library. I have an import statement in an __init__.py
file in one of my sub-modules which looks like this:<
According to PEP 8, you should include MyClass
in __all__, which will also fix the imported-but-not-used issue:
To better support introspection, modules should explicitly declare the names in their public API using the __all__ attribute.
According to flake8's documention, you can in-line ignore this specific warning with:
from .my_class import MyClass # noqa: F401
For reference, here are flake8's error codes.
This is not actually a PEP8 violation. I simply do this:
from .my_class import MyClass # noqa
Edit: Another possibility is to use __all__
. In that case, flake8 understands what is going on:
from .my_class import MyClass
__all__ = ['MyClass',]