Je vérifie PEP8 dans python en utilisant la bibliothèque python flake8 . J'ai une instruction d'importation dans un __init__.py
fichier dans l'un de mes sous-modules qui ressemble à ceci:
from .my_class import MyClass
La raison pour laquelle j'ai cette ligne dans le fichier init est pour que je puisse importer MyClass depuis le sous-module en tant que from somemodule import MyClass
au lieu d'avoir à écrire from somemodule.my_class import MyClass
.
Je voudrais savoir s'il est possible de maintenir cette fonctionnalité tout en corrigeant la violation PEP8?
Ce n'est pas réellement une violation PEP8. Je fais simplement ceci:
from .my_class import MyClass # noqa
Edit: Une autre possibilité est d'utiliser __all__
. Dans ce cas, flake8 comprend ce qui se passe:
from .my_class import MyClass
__all__ = ['MyClass',]
Selon documentation de flake8 , vous pouvez ignorer en ligne cet avertissement spécifique avec:
from .my_class import MyClass # noqa: F401
Pour référence, voici les flake8 codes d'erreur .