首页 > 解决方案 > 使用 pip 安装的模块,可被 PyCharm 识别,但不能被 macOS 终端识别

问题描述

我正在尝试使用我的终端访问在 PyCharm 上创建的 python 文件。当我在 PyCharm 上导入模块时,它们会被找到并成功导入(例如 tkinter、PIL 等)。当我尝试在终端上运行该文件时,我收到以下消息:

    Traceback (most recent call last):
  File "THE_project_GUI.py", line 3, in <module>
    from PIL import Image
ImportError: No module named PIL

which python命令返回:/usr/bin/python

which -a pip命令返回:/usr/local/bin/pip

如何确保我使用 pip 正在安装的解释器?

审判:

tromgy的解决方案:

me@mahmouds-mbp-2 ~ % ln -s -f /usr/local/bin/python3.8 /usr/local/bin/python 

me@mahmouds-mbp-2 ~ % cd /Users/me/Documents/Programming/THE_project

me@mahmouds-mbp-2 THE_project % /usr/local/bin/python3.8 /usr/local/bin/python THE_project_GUI.py 

返回:

File "/usr/local/bin/python", line 1
SyntaxError: Non-UTF-8 code starting with '\xcf' in file /usr/local/bin/python on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details

v0idbar 的解决方案:

我已经使用以下方法安装了 python 3.7:

 brew install python@3.7

返回:

Python 已安装为 /usr/local/opt/python@3.7/bin/python3

分别指向,等的未版本化符号链接 , 等 已安装python到/usr/local/opt/python@3.7/libexec/binpython-configpippython3python3-configpip3

You can install Python packages with
  /usr/local/opt/python@3.7/bin/pip3 install <package>
They will install into the site-package directory
  /usr/local/lib/python3.7/site-packages

我通过转到 File> New project settings> Preferences for new projects 更改了 Pycharm 解释器。然后在使用/usr/local/opt/python@3.7/bin/python3.

然后我运行以下内容:

me@mahmouds-mbp-2 THE_project % /usr/local/opt/python@3.7/bin/python3
/usr/local/opt/python@3.7/bin/python3
Python 3.7.11 (default, Jul  6 2021, 12:43:19) 
[Clang 12.0.5 (clang-1205.0.22.9)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> /usr/local/opt/python@3.7/bin/python3 THE_project_GUI.py
  File "<stdin>", line 1
    /usr/local/opt/python@3.7/bin/python3 THE_project_GUI.py
    ^
SyntaxError: invalid syntax

标签: pythonmacos

解决方案


尝试运行pip -V以找出它正在使用的 python 版本:

$ pip -V

pip 19.0.1 from /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pip (python 3.7)

您可以检查它是否与您使用的 python 可执行文件版本相同:python -m pip -V

$ python -m pip -V

pip 9.0.1 from /Users/lev/anaconda2/lib/python2.7/site-packages (python 2.7)

您可能在这些版本之间存在不匹配。


推荐阅读