" ModuleNotFoundError: Нет модуля с именем "jose" " ; но он уже установлен

      Process SpawnProcess-9:
Traceback (most recent call last):
  File "C:\Users\gveda\AppData\Local\Programs\Python\Python310\lib\multiprocessing\process.py", line 314, in _bootstrap
    self.run()
  File "C:\Users\gveda\AppData\Local\Programs\Python\Python310\lib\multiprocessing\process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "C:\Users\gveda\AppData\Local\Programs\Python\Python310\lib\site-packages\uvicorn\_subprocess.py", line 76, in subprocess_started
    target(sockets=sockets)
  File "C:\Users\gveda\AppData\Local\Programs\Python\Python310\lib\site-packages\uvicorn\server.py", line 60, in run
    return asyncio.run(self.serve(sockets=sockets))
  File "C:\Users\gveda\AppData\Local\Programs\Python\Python310\lib\asyncio\runners.py", line 44, in run
    return loop.run_until_complete(main)
  File "C:\Users\gveda\AppData\Local\Programs\Python\Python310\lib\asyncio\base_events.py", line 649, in run_until_complete
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed  
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "D:\Programs\FastAPI\.\Blog\main.py", line 4, in <module>    from .routers import blog,user,auth
  File "D:\Programs\FastAPI\.\Blog\routers\auth.py", line 3, in <module>         from .. import schemas,database,models,token
  File "D:\Programs\FastAPI\.\Blog\token.py", line 2, in <module>
    from jose import JWTError, jwt
ModuleNotFoundError: No module named 'jose'

Я уже установил модуль python-jose, но он выдает ошибку, что есть модуль с именем jose. Из модуля jose я импортирую jwt, и его модуля нет. Почему ??

Я уже установил модули python-jose и jose отдельно, но возникает та же ошибка.

1 ответ

это распространенная ошибка, и все это связано с переменными среды. Проблема в том, что когда вы пишете в своей командной строке, она указывает на путь к определенномуpip.exeэто может бытьpython/3.9/lib/pip.exe python/3.11/lib/pip.exe,python/3.x/lib/pip.exeили любая другая версия Python, установленная на вашем компьютере. Так что, вероятно, вы установили свою библиотеку с другим пипсом, чем тот, который связан с исполняемым файлом python, с которым вы вызываете свой скрипт.

Итак, либо вы меняете свои переменные среды на что-то вродеpip39иpip311или вы называете конкретный пункт так:

Окна

      C:\WINDOWS\system32>where python
C:\Python311\python.exe
C:\Users\usr\AppData\Local\Programs\Python\Python38-32\python.exe
C:\Users\usr\AppData\Local\Microsoft\WindowsApps\python.exe

Благодаря этому мы можем найти все экземпляры Python на нашей машине.

Тогда все, что вам нужно сделать, это вызвать pip следующим образом:

      C:\WINDOWS\system32>C:\Python311\python.exe -m pip install my_desired_lib

Теперь, когда вы вызываете свой скрипт, вы должны указать, какой исполняемый файл вы хотите использовать.

      C:\WINDOWS\system32>C:\Python311\python.exe my_script.py

линукс

Дляwhereиспользование функцииwhereis. Кроме того, использование python такое же, поэтому вызов определенногоpipи запуск вашего скрипта с определеннымpython.exeта же.

Я надеюсь, что это поможет кому-то!

Другие вопросы по тегам