【问题标题】:Why python3 can't find already installed module?为什么python3找不到已经安装的模块?
【发布时间】:2020-11-14 05:56:58
【问题描述】:

我的 MAC 上有 2.7 和 3.7 版本的 Python。我使用 Visual Studio Code 作为 IDE,我想在我的脚本中引用 Yahoo Earnings module。如果我使用 2.7 python 版本,我可以构建和运行脚本。但是如果我使用 3.7 版本的 Python,我会得到以下错误:

Exception has occurred: ModuleNotFoundError
  No module named 'yahoo_earnings_calendar'

这里的输出 pip3 list 命令显示我安装了 yahoo-earnings-calendar 0.6.0 模块

`

bash-3.2$ pip3 listPackage                 Version
----------------------- ---------
arrow                   0.14.7
certifi                 2020.6.20
chardet                 3.0.4
ics                     0.7
idna                    2.10
pip                     20.1.1
python-dateutil         2.8.1
requests                2.24.0
setuptools              47.1.0
six                     1.15.0
TatSu                   5.5.0
urllib3                 1.25.10
**yahoo-earnings-calendar 0.6.0**

如果有人可以帮助我找出可能导致此问题的原因,我会很高兴。

【问题讨论】:

  • 看起来你有第三个你不知道的 python 安装
  • <your_python_interpreter> -m pip list 说什么?
  • 你也可以设置VSCode使用的python解释器,确保是同一个。 pip 安装也可以依赖于用户。
  • @KlausD。我刚刚看到我有 3 个版本的 3.x Python - 3.73、3.8.1 和 3.8.5。如果我选择最新的 3.8,5 作为解释器并运行 python3 -m pip list 我可以看到我已经安装了我想要的模块并且我可以运行脚本而不会出错。非常感谢。
  • 关于该主题的一些参考:snarky.ca/why-you-should-use-python-m-pip

标签: python python-3.x visual-studio-code pip


【解决方案1】:

您的系统上可能有多个版本的 python3。例如,我的系统上有 python 3.7 和 3.6。如果我使用 pip3,它会在我的 3.6 版安装中安装软件包。

通过运行

pip3 --version

在我的例子中,你可以看到 python pip3 来自哪个版本:3.6

pip 19.3.1 from /home/andreas/.local/lib/python3.6/site-packages/pip (python 3.6)

使用模块时请确保使用正确版本的python

如果我想使用 pip3 模块,我需要编写

python3.6 someprogram.py

运行程序时

因为如果我只是写

python someprogram.py

它使用 python 3.7,因此该模块将不可用

【讨论】:

    猜你喜欢
    • 2019-10-04
    • 2012-07-05
    • 1970-01-01
    • 2020-08-29
    • 2017-07-07
    • 2021-04-26
    • 1970-01-01
    • 2021-01-31
    • 2019-05-09
    相关资源
    最近更新 更多