Терминал Pycharm, похоже, не использует виртуальную среду - PullRequest
0 голосов
/ 26 сентября 2019

У меня есть установка venv с Python 3.7 с несколькими установленными пакетами.Я установил их с помощью пользовательского интерфейса в настройках, и сценарии работают нормально.

Однако, когда я захожу в окно терминала и пытаюсь запустить там свой сценарий, он выдает мне сообщение об ошибке «Нет модуля с именем xxxx»".

При запуске python3 run_glue.py с любопытством выдается следующая ошибка:

sh-3.2$ python3 run_glue.py
Traceback (most recent call last):
  File "run_glue.py", line 27, in <module>
    import torch
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/torch/__init__.py", line 79, in <module>
    from torch._C import *

ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/torch/_C.cpython-36m-darwin.so, 9): Library not loaded: /usr/local/opt/libomp/lib/libomp.dylib
  Referenced from: /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/torch/lib/libshm.dylib
  Reason: image not found

Кажется, что он смотрит на среду Python 3.6, хотя моя виртуальная среда 3.7.Я проверил свои настройки, и я не понимаю, почему он будет смотреть на среду Python 3.6.

Есть мысли?

1 Ответ

1 голос
/ 26 сентября 2019

Сначала вам нужно активировать свою среду:

sh-3.2$ source path_of_your_venv/bin/activate

Теперь вы должны увидеть (env) перед приглашением bash:

(env) sh-3.2$

Затем вы можете проверить, правильно ли python3 ссылается на среду, с помощью which python3.

В качестве альтернативы, выполните python3 непосредственно из вашей среды:

./path_of_your_venv/bin/python3 run_glue.py.

...