无法导入第三方python模块

时间:2020-06-13 00:09:58

标签: python-3.x macos terminal python-module pyperclip

我想以我是编码新手的事实作为开头,这对我来说是非常新的。实际上,这是我的第一个堆栈溢出问题。

无论如何,我正在学习python并尝试在Terminal中安装我的第一个第三方模块“ pyperclip”,但我认为它没有正确安装。我对Terminal也很陌生。

作为参考,我正在遵循youtube指南“使用Python自动完成无聊的事情”

以下是我的一些系统详细信息:

  • Mac OS X
  • Python版本3.8.3

我在Terminal中运行了以下内容:

sudo pip3 install pyperclip

然后我在安装pyperclip之后在终端中收到以下消息

该目录或其父目录不属于当前用户,并且缓存已被禁用。请检查该目录的权限和所有者。如果使用sudo执行pip,则可能需要sudo的-H标志。

然后我尝试使用以下方法再次安装:

sudo -H pip3 install pyperclip

然后我收到此消息:

已满足要求:/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages(1.8.0)中的pyperclip

我上次尝试使用以下方法进行安装:

pip3 install pyperclip

我再次收到相同的消息:

已满足要求:/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages(1.8.0)中的pyperclip

这也是我尝试在交互式shell中导入pyperclip时遇到的错误:

>>> import pyperclip
Traceback (most recent call last):
  File “<stdin>”, line 1, in <module>
ModuleNotFoundError: No module named ‘pyperclip’
>>> 

有人可以帮我吗?所有这些东西我都像一条鱼从水里捞出来。特别是在终端方面。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

我想讨论一些可能对您有所帮助的事情。

我们通常不将sudopip结合使用来安装Python软件包。这将在系统级别安装软件包,并且可能与系统当前已安装的软件包发生冲突,或者可能会将软件包安装到与您从终端使用的软件包不同的Python安装中。相反,我们通常使用pip install --user而不是sudo pip install

有关更多信息,请参见此问题和答案:sudo pip install VS pip install --user

如果不确定软件包是否已正确安装,请使用

pip3 list

我们还需要确保您使用的Python解释器与pip的安装位置相同。由于您正在使用pip3进行安装,因此应该在终端上使用python3进入交互式外壳。您还可以通过在终端中输入以下命令来验证您使用的是正确的Python解释器:

which python3

然后,确保输出与/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/报告的pip3路径匹配。

如果您使用诸如ipython之类的其他交互式外壳,则需要确保以相同的方式使用{p> 1来安装ipython

pip3 install --user ipython

并使用

执行
ipython3

尝试使用此新信息重复您的步骤,以查看是否有帮助。让我知道您是否还有其他问题或需要更多帮助。