0

作为一些简短的背景信息:我最初尝试使用 Miniconda(与 conda)在我的 Raspberry Pi 上安装我的项目所需的依赖项。尝试使用 Conda 安装 SimpleAudio 包后,我收到一条错误消息,说它不存在,因此我继续通过 Pip 安装它。尽管我收到以下错误消息,但 Pip 找到了正确的包:

pi@raspberrypi:~ $ pip install simpleaudio

Traceback (most recent call last):
      File "/home/pi/miniconda3/bin/pip", line 7, in <module>
        from pip._internal.cli.main import main
      File "/home/pi/miniconda3/lib/python3.4/site-packages/pip/_internal/cli/main.py", line 10, in <module>
        from pip._internal.cli.autocompletion import autocomplete
      File "/home/pi/miniconda3/lib/python3.4/site-packages/pip/_internal/cli/autocompletion.py", line 9, in <module>
        from pip._internal.cli.main_parser import create_main_parser
      File "/home/pi/miniconda3/lib/python3.4/site-packages/pip/_internal/cli/main_parser.py", line 7, in <module>
        from pip._internal.cli import cmdoptions
      File "/home/pi/miniconda3/lib/python3.4/site-packages/pip/_internal/cli/cmdoptions.py", line 28, in <module>
        from pip._internal.models.target_python import TargetPython
      File "/home/pi/miniconda3/lib/python3.4/site-packages/pip/_internal/models/target_python.py", line 4, in <module>
        from pip._internal.utils.misc import normalize_version_info
      File "/home/pi/miniconda3/lib/python3.4/site-packages/pip/_internal/utils/misc.py", line 20, in <module>
        from pip._vendor import pkg_resources
      File "/home/pi/miniconda3/lib/python3.4/site-packages/pip/_vendor/pkg_resources/__init__.py", line 92, in <module>
        raise RuntimeError("Python 3.5 or later is required")
    RuntimeError: Python 3.5 or later is required

看来我需要更新 Python,虽然当我在 Spyder IDE 上打印版本时,它说我已经在使用 3.7。

我是否在我的 IDE 使用的版本与终端用于查找版本的默认进程之间造成了某种不匹配?我注意到它正在寻找 Miniconda 下的 Python 版本。如果我可以更新如果可以,是否有解决此问题的方法?

如果需要,请作为我获取更多信息(我对堆栈溢出相当陌生)。

4

3 回答 3

0

更新:

我已经能够使用以下说明将 Python 的更新版本安装到 3.6:

https://stackoverflow.com/a/56852714/12361146

就我如何更新 Python 而言,这通常解决了这个问题的范围,但我仍然对为什么 Spyder IDE 使用更新版本的 Python 而终端显示其他内容感到困惑。

于 2020-02-13T17:46:18.273 回答
0

您可以使用包管理器 apt 或 apt-get 安装较新版本的 python。

首先获取最新的包定义。

$ sudo apt-get update

然后您可以显示有关 python3 包的详细信息。

$ apt-cache show python3

当我现在运行它时,我得到“版本:3.7.3-1”。

安装 python3 包及其所有依赖项。

$ sudo apt-get install python3

您仍然需要在运行命令时键入python3和输入,pip3因为您没有替换内置的 python 2.7。

试试这些命令看看你得到了什么

$ python --version

$ python3 --version

如果您想将默认 python 更改为 python3,请查看此答案How to change the default python version in Raspberry Pi

于 2021-01-26T14:41:11.007 回答
0

要回答为什么 Spyder 报告 Python 的更新版本的问题,以下是原因。与 Raspbian 一起安装的 Python 的默认版本是 2.7 和 3.5,位于/usr/bin/目录中。但是,当您安装 Spyder 时(无论是独立安装,还是更常见地使用 conda),它包括自己的 Python 安装,它被配置为在 IDE 中使用,并且位于不同的目录中。因此,当您比较版本时,首先通过python3 --version在命令行输入,然后print(sys.executable)从 Spyder IDE 输入,它们是不同的。

现在pip与 conda 一起使用来更新 Python 的 Spyder 安装的问题是它有可能把它弄得一团糟,所以除非你真的知道你在做什么,否则请避免这种情况。但是,从您上面发布的代码中,您已经避免了这种情况,因为这将影响 Python 的默认 Raspbian 安装,而不是 Spyder 安装。升级后一个版本应该使用 Conda,而不是pip。

希望您现在已经全部启动并运行。

于 2020-11-15T15:19:17.183 回答