[PYTHON] Wenn Sie nicht importieren können, obwohl es bereits über Rohrleitungen installiert ist

Es wird installiert, wenn Sie es weiterleiten, aber Sie können es nicht importieren. Es ist eine einfache Geschichte, aber zum Beispiel

>>> import django
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'django'

Ich erhalte eine Fehlermeldung, wenn ich versuche, Django zu importieren. Der Inhalt des Fehlers bleibt gleich, aber das Modul wird nicht gefunden.

Ich fragte mich, ob es überhaupt keinen Django gab und wann ich ihn abpfeifte.

C:\Users\aaa>pip install django
Requirement already satisfied: django in c:\users\aaa\anaconda3\lib\site-packages (3.0)
Requirement already satisfied: sqlparse>=0.2.2 in c:\users\aaa\anaconda3\lib\site-packages (from django) (0.3.0)
Requirement already satisfied: asgiref~=3.2 in c:\users\aaa\anaconda3\lib\site-packages (from django) (3.2.3)
Requirement already satisfied: pytz in c:\users\aaa\anaconda3\lib\site-packages (from django) (2019.3)

Da es bereits zufrieden ist, wird gesagt, dass es bereits zufrieden ist. Das bedeutet einfach, dass der Weg nicht durchgeht.

Sie können den Pfad in sys.path überprüfen

>>> import sys
>>> import path
>>> pprint.pprint(sys.path)
['',
 'C:\\Users\\aaa\\Anaconda3\\python37.zip',
 'C:\\Users\\aaa\\Anaconda3\\DLLs',
 'C:\\Users\\aaa\\Anaconda3\\lib',
 'C:\\Users\\aaa\\Anaconda3',
 'C:\\Users\\aaa\\Anaconda3\\lib\\site-packages',
 'C:\\Users\\aaa\\Anaconda3\\lib\\site-packages\\win32',
 'C:\\Users\\aaa\\Anaconda3\\lib\\site-packages\\win32\\lib',
 'C:\\Users\\aaa\\Anaconda3\\lib\\site-packages\\Pythonwin',

In der Tat gibt es keinen Django-Pfad "django in c: \ users \ aaa \ anaconda3 \ lib \ site-packages (3.0)".

Sobald Sie dies wissen, müssen Sie nur noch den Pfad zu den Umgebungsvariablen hinzufügen. Da es mit sys.path.append zur Umgebungsvariablen hinzugefügt werden kann

sys.path.append("c:/users/aaa/anaconda3/lib/site-packages (3.0)")

Wenn Sie es hineingeschoben haben, überprüfen Sie es erneut

>>> pprint.pprint(sys.path)
 'c:/users/aaa/anaconda3/lib/site-packages (3.0)'

Ist OK, wenn hinzugefügt wird.

>>> import django
>>> print(django.get_version())
3.0

Ich konnte bestätigen, dass Django verwendet werden kann.

Fehlermuster

Übrigens, wenn ich versuche, es zu kopieren und in eine Umgebungsvariable einzufügen, erhalte ich diesen Fehler.

>>> sys.path.append("c:\users\aaa\anaconda3\lib\site-packages (3.0)")
  File "<stdin>", line 1
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \uXXXX escape
>>> sys.path.append("c:/users/aaa/anaconda3/lib/site-packages (3.0)")

Dies liegt daran, dass die Markierung \ ein Escape ist und daher als Escape-Sequenz erkannt wird. sys.path.append ("c: \ users \ aaa \ anaconda3 \ lib \ site-packages (3.0)") Sie können dies mit sys.path.append ("c: / users / aaa / anaconda3 / lib / site-packages (3.0)") tun.

Recommended Posts

Wenn Sie nicht importieren können, obwohl es bereits über Rohrleitungen installiert ist
Importfehler, obwohl ich Python installiert habe
Wenn Sie pip installiert haben sollten, aber einen Importfehler erhalten
Wenn Sie versuchen, Python2 pip nach der Installation von Python3 pip zu installieren, wird dies abgelehnt
Was tun, wenn Sie mysqlclient nicht per Pip installieren können?
Was ist pip und wie benutzt du es?
Was tun, wenn Sie sich über "Gtk * Backend erfordert die Installation von pygtke" ärgern, obwohl pygtk in matplotlib enthalten ist
Wenn Sie einen Fehler erhalten: Dieser Port wird bereits verwendet. In Django
Was tun, wenn Sie pyaudio nicht mit pip #Python installieren können?
Tensorflow mit Raspeltorte. Wenn Sie mit pip stolpern, lösen Sie es mit virtualenv!
[TensorFlow] Wenn Sie TensorBoard ausführen möchten, installieren Sie es mit pip.