【问题标题】:not able to import pymysql module in python3无法在 python3 中导入 pymysql 模块
【发布时间】:2020-01-17 09:10:41
【问题描述】:

我已经使用 sudo pip3 install pymysql 下载了 PyMySql,它显示 python 模块安装成功。

但是当我尝试导入它时,它显示没有可用此名称的模块。

实际上,我正在为 Ansible 中的 mysql root 用户密码更新编写剧本,而 Ansible 需要这个 pymysql 模块。

【问题讨论】:

  • 您应该尽量避免使用 sudo 使用 pip 进行安装。这是一个security risk
  • @Pablo 感谢好友我卸载了 pymysql 并再次从帮助我的 root 用户安装。
  • 现在可以使用了吗?此外,以 root 身份安装与使用 sudo 安装没有区别(在安全风险方面)。
  • @pablo 现在它正在工作,但我已经使用 sudo power 在 ubuntu 中完成了相同的模块安装,这对我有用,但在这里它会产生问题。

标签: python ansible importerror pymysql


【解决方案1】:

你可以试试下面的命令吗?

python3 -m pip3 install pymysql

然后使用

import pymysql

在你的指挥下?

【讨论】:

  • 是的,结果和上一个一样。已满足要求:/usr/local/lib/python3.7/site-packages (0.9.3) 中的 pymysql,我无法导入模块
【解决方案2】:

ansible 脚本没有得到PyMySqlMySql-python,如第二张图片所示。您必须检查您使用的 ansible 的 python 版本并修复 ansible 脚本中的 python 路径以显示您的 PyMySql 模块的位置。

由于这是一个与ansible相关的问题,你可以为这个问题添加标签ansible

【讨论】:

    【解决方案3】:

    要使用 mysql,我们需要 mysql 驱动程序和特定于编程语言的客户端库。 看起来您已经安装了客户端库。

    检查如何根据您的操作系统安装驱动程序。

    希望这会有所帮助。

    【讨论】:

      【解决方案4】:

      我以 root 用户身份登录,然后卸载了以前安装的 pymysql,然后再次从 root 用户安装了 pymysql,现在它工作得很好。所以尽量避免使用 sudo 从 pip 安装一些东西。

      【讨论】:

      • 与其从根安装,如果安装恶意代码仍然有风险(如 sudo),您应该使用虚拟环境。如果没有,也许试试 pip 的 --user 选项?
      猜你喜欢
      • 2021-05-31
      • 1970-01-01
      • 2016-12-09
      • 2019-10-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-30
      • 2016-03-20
      相关资源
      最近更新 更多