Pylint de VSCode est ennuyeux avec l'importation! !! !! !!

Cet article ressemble plus à une compression d'erreurs. ** Une fois que vous avez résolu le problème, vous devriez également lire cet article (https://qiita.com/ysk24ok/items/2711295d83218c699276). ** **

en premier

Pylint de VSCode est ennuyeux avec l'importation! !! !! !! Qu'Est-ce que c'est? Je parle de

Lors de l'écriture de Python avec VSCode Lorsque j'essaye d'importer mon propre module par rapport à celui-ci, j'obtiens presque toujours une erreur.

0. Environnement

La structure de répertoires suivante dans l'environnement global (sans utiliser l'environnement virtuel).

~
-Sample
 -main.py
 -__init__.py
 -sub_methods
  -method1.py
  -method2.py
-out.py

Chacun a le code suivant.

main.py


print("main")
from sub_methods import method1

__init__.py


print("__init__")
import os
originaly = os.getcwd
os.chdir(os.path.dirname(os.path.abspath(__file__)))
from . import main
os.chdir = originaly

method1.py


print("method1")
import method2
#from sub_methods import method2

method2.py


print("method2")

out.py


print("out")
from Sample import main

1.unresolved import Même dans cet état, il y a un avertissement. 2019-12-14 (2).png

Cette "importation non résolue" ... "` apparaîtra lorsque vous effectuez une importation relative si elle est plus profonde que la racine de l'espace de travail.

Même si on dit qu'il n'est pas résolu, on a l'impression que ... Pour calmer ça

Ouvrez Ctrl + Maj + P> Settings.json

2019-12-14 (3).png

** S'il faut changer "" python.jediEnabled ": false en" python.jediEnabled ": true` Supprimez cette section elle-même. ** **

2019-12-14 (4).png

2.Unable to import

2019-12-14 (6).png

tais-toi! Le répertoire courant est Sample car je lance directement main! !! !! !!

… E? Partir de l'extérieur from sub_methods import method1 à from .sub_methods import method1 Réécrire dans ...? Ne déplacez pas la racine de travail et le répertoire courant ...?

Chit, je suis désolé ... Je suis désolé.

Blague à part, si vous appelez method2 depuis method1 au lieu de juste main, Par tous les moyens, vous importerez avec Sample comme répertoire courant.

2019-12-14 (9).png

method1.py


print("method1")
import method2
#from sub_methods import method2

output


ModuleNotFoundError: No module named 'method2'

Changer>

method1.py


print("method1")
#import method2
from sub_methods import method2

output


main
method1
method2

Je n'ai pas d'autre choix que de l'écrire comme ça, mais si j'obtiens une erreur, je ne peux m'empêcher d'être distrait. Cela peut être supprimé en faisant reconnaître à Pylint le ** répertoire courant (ici Sample) comme un dossier de bibliothèque. ** **

lib
-os
 -...
-numpy
 -...
...

Mais si c'est la reconnaissance de bibliothèque par défaut, ici

lib
-os
 -...
-numpy
 -...
-main
-sub_methods
 -method1
 -method2

Si tu me laisse le reconnaître comme Vous ne devriez pas vous fâcher si vous écrivez from sub_methods method2 like from os import path.

Par conséquent, ** Créez les fichiers suivants dans le dossier racine de travail **

pylintrc


init-hook="./Sample"

Maintenant, lorsque vous rechargez la charpie ou redémarrez VSCode, vous ne devriez plus voir l'erreur.

Résumé

  1. S'il faut changer "python.jediEnabled": false en "python.jediEnabled": true Supprimez cette section elle-même.
  2. Créez un pylintrc dans le dossier workroot et attribuez à init-hook le dossier qui contient main.py.

Cet article ressemble plus à une compression d'erreurs. ** Une fois que vous avez résolu le problème, vous devriez également lire cet article (https://qiita.com/ysk24ok/items/2711295d83218c699276). ** **

Recommended Posts

Pylint de VSCode est ennuyeux avec l'importation! !! !! !!
Python avec VSCode (Windows 10)
[Python] Linter pylint n'est pas installé s'affiche [VS Code]
Déboguer Python avec VS Code
Résoudre l'erreur d'importation non résolue de VS Code
Essayez d'exécuter Jupyter avec VS Code
Installez python avec mac vs code
Afficher le graphique japonais avec VS Code + matplotlib
J'ai essayé Flask avec des conteneurs distants de VS Code
Environnement virtuel / package Python (Windows10) avec VSCode
Paramètres du code VS
Déboguer avec VS Code en utilisant Boost Python Numpy
Utiliser Python dans un environnement Anaconda avec VS Code
Utilisez le conteneur de développement Docker facilement avec VS Code
Créer un environnement d'exécution python avec VS Code
Paramètres VS Code pour le développement en Python avec achèvement
VS Code indique qu'il y a une erreur dans cv2
Relancer la recherche de symboles dans l'espace de travail Python avec VS Code
Activez l'intelligence des bibliothèques externes avec Pipenv + VSCode
Déboguer à distance l'environnement Django créé avec docker-compose avec VS Code
Renforcez avec le test de code ⑨
Renforcez avec le test de code ③
Je veux me débarrasser des avertissements d'importation de Pyright et pylint dans VSCode
Renforcez avec le test de code ⑤
Renforcez avec le test de code ④
Renforcez avec le test de code ②
Importer tsv avec Python
Code de bourdonnement avec numpy
Renforcez avec le test de code ①
Renforcez avec le test de code ⑧
Renforcez avec le test de code ⑨
Paramètres lors du développement d'applications App Engine / Python avec VS Code
Exécutons jupyter nativement pris en charge par VS Code avec python3.8
Essayez Fortran avec VS Code pour déboguer les paramètres. [Win10]
Paramètres pour entrer et déboguer le contenu de la bibliothèque avec VS Code
Histoire que Python a cessé de travailler avec VS Code (Windows 10)
Utilisation de jupyter notobook avec VS Code (mac OS) (mémo personnel)
LaTeX confortable avec sous-système Windows pour Linux et VS Code
Créer un environnement Python avec WSL + Pyenv + Jupyter + VSCode