Je construis mon code dans vscode en utilisant python 3.7.3.
La structure du dossier:
project
├── main.py
└── modules
├── __init__.py
├── foo.py
└── boo.py
À foo.py:
import boo
boo.printBoo()
Quand je courais foo.py ça marche. Je peux obtenir le résultat que j'attends.
This is boo
Mais vscode apparaît:
Impossible d'importer 'boo' pylint (erreur d'importation)
Bien que le code fonctionne, existe-t-il une façon de vous débarrasser de pylint(import-error)
?
J'ai essayé de changer l'instruction d'importation pour
from ..modules import boo as Boo
eRREUR: Tentative d'importation relative sans paquet parent connu
et
import modules.boo as Boo
eRREUR: Aucun module nommé 'modules'
Quel est le problème, est-ce que c'est le problème de Pylint ou ai-je abuser de l'importation?
Avait exactement le même problème, avec deux fichiers coexistants dans le même sous-dossier, exécutant simplement bien, mais obtenir une pylint(import-error)
dans vscode.
Le solution pour moi ajouté le texte suivant à <projectroot>/.vscode/settings.json
:
{
"python.linting.pylintArgs": [
"--init-hook",
"import sys; sys.path.insert(0, './modules')"
]
}
Qui ajoute que le sous-dossier "modules" pertinent sur les chemins où -pylint regardera, outre le dossier racine du projet