ModuleNotFoundError:没有名为“yaml”的模块错误

Aks*_*rma 5 python pip pyyaml python-3.x centos7

我有一台安装了 python-2.7.5 作为默认 python 的 centos7 机器。对于我的工作,我需要在同一台机器上安装 3.x 版本的 python,所以我安装了 python-3.6.8 并创建了一个软链接,/usr/bin/python指向/usr/bin/python3以下命令:

sudo ln -fs /usr/bin/python3 /usr/bin/python

现在,对于示例 python 脚本,假设:test.py,ModuleNotFoundError: No module named 'yaml'当我尝试使用import yaml它时出现错误。

test.py 脚本如下:

#!/usr/bin/python3

"""
Sample python script to import yaml.
"""

import yaml

print("Hello! Could you please help me resolve this?")
Run Code Online (Sandbox Code Playgroud)

错误如下:

[cloud-user@xx.xx.xx.xx]$python test.py
Traceback (most recent call last):
  File "test.py", line 6, in <module>
    import yaml
ModuleNotFoundError: No module named 'yaml'
Run Code Online (Sandbox Code Playgroud)

我看到在 stackoverflow 和 github 上提出了几个查询,例如thisthisthis,但没有看到任何解决此问题的响应。

正如上面链接所建议的,我已经使用以下命令安装了 pyyaml:

sudo python3 -m pip install pyyamlsudo pip3 install pyyaml但我仍然继续得到ModuleNotFoundError错误。

有人可以帮我解决这个问题吗?

提前致谢,

阿克沙·夏尔马

小智 1

当系统中安装了多个 python 发行版时,就会出现此类问题。

只需运行:pip3 list命令并查看是否能够在列表中看到该包。如果没有,则您没有将 PyYaml 包安装在正确的位置。

PS:有时对于普通用户来说,python 位于不同的位置,对于 sudo 用户,它位于不同的位置。检查在不提供 sudo 的情况下运行命令。