没有名为“pymysql”的模块

Posted

技术标签:

【中文标题】没有名为“pymysql”的模块【英文标题】:No module named 'pymysql' 【发布时间】:2016-01-31 11:46:18 【问题描述】:

我正在尝试在 Ubuntu 上使用 Pymysql

我已经使用pippip3 安装了pymysql,但每次我使用import pymysql,它都会返回ImportError: No module named 'pymysql'

我使用的是 Ubuntu 15.10 64 位和 Python 3.5。

同样的 .py 可以在带有 Python 3.5 的 Windows 上工作,但不能在 Ubuntu 上工作。

【问题讨论】:

你跑了sudo pip3 install pymysql然后试图import pymysqlpython3 是的,我从 sudo 运行它。 奇怪,在我的系统上工作得很好。尝试运行sudo apt-get install python3-pymysql 就是这样!谢谢老哥! 已找到答案,但很高兴知道为什么会发生这种情况。你确定python3sudo python3是同一个python? 【参考方案1】:

已经在 cmets 中回答了这个问题,但是这个问题有了答案,问题通过运行解决了:

sudo apt-get install python3-pymysql

【讨论】:

如果问题仍未解决,请在 debian 系统上尝试此操作,apt install python-mysqldb Mac 机器同样的问题。 pymysql 已安装。但是当我们运行 python 脚本时出现模块错误。 mac 不支持 apt-get。使用 brew 而不是 apt-get 但 brew 没有包 python3-pymysql 这行代码让我很开心。非常感谢!【参考方案2】:

用途:

import pymysql

不是:

import PyMySQL

这对我有用。

【讨论】:

这适用于 Ubuntu 16.04 和 Red Hat Enterprise Linux 6.9。 希望我能投票两次。如此愚蠢的错误,与我在这方面看到的任何教程相反。 老兄。你救了我的命。在 Debian 9 上工作 这个省时~【参考方案3】:

在尝试了一些事情之后,遇到了PyMySQL Github,这很有效:

sudo pip install PyMySQL

并导入使用:

import pymysql

【讨论】:

这在 Mac 上不起作用。安装正常 - 导入不正常。 如果你得到错误:awscli 1.15.47 has requirement PyYAML<=3.12,>=3.10, but you'll have pyyaml 4.1 which is incompatible. 那么你有依赖问题,必须运行:apt-get update && apt-get install -y python-pip libpython-devpip install awscli【参考方案4】:

如果sudo apt-get install python3-pymysql 对你不起作用,试试这个:

转到 the PyMySQL page 并下载 zip 文件。 然后,通过终端,cd 到您的下载文件夹并解压 文件夹 cd 进入新解压的文件夹 安装 setup.py 文件:sudo python3 setup.py install

【讨论】:

此页面上提供的其他解决方案对我不起作用,只有这个。谢谢@Yash Gupta! 这个和上面的都不适合我,会尝试不同的连接器【参考方案5】:

    确保您使用的是您认为的 Python 版本。在 Python 中运行 import sysprint(sys.version)

    选择正确的包管理器来安装 pymysql:

    对于 Python 2.x sudo pip install pymysql。 对于 Python 3.x sudo pip3 install pymysql。 对于在 Anaconda 上运行的任何一个:sudo conda install pymysql。 如果这不起作用,请尝试 APT:sudo apt-get install pymysql

    如果一切都失败了,直接安装包:

    转到PyMySQL page 并下载 zip 文件。 然后,通过终端,cd 到您的下载文件夹并解压缩该文件夹。 cd 到新解压的文件夹中。 安装 setup.py 文件:sudo python3 setup.py install

此答案是建议的汇编。除了这里提出的其他建议,感谢@cmaher 在this related thread 上的评论。

【讨论】:

【参考方案6】:

要解决这个问题,请找出 pymysql 的安装位置。

例如,如果它安装在/usr/lib/python3.7/site-packages 中,则在import pymysql 命令上方添加以下代码:

import sys
sys.path.insert(0,"/usr/lib/python3.7/site-packages")
import pymysql

这确保你的 Python 程序可以找到 pymysql 的安装位置。

【讨论】:

【参考方案7】:

fwiw,对于conda env:

 conda install -c anaconda pymysql 

【讨论】:

【参考方案8】:

对于windows或使用google colab的,你可以试试这个

!pip install pymysql
import pymysql

【讨论】:

【参考方案9】:

sudo apt-get install python3-pymysql

这个命令也适用于我安装 Flask 应用程序所需的包,以便在 APACHE2 服务器上使用 WISG 模块在 ubuntu 16x 上进行调整。

默认情况下,WSGI 使用 python 3 安装 UBUNTU。

Anaconda 自定义安装不起作用。

【讨论】:

【参考方案10】:

我刚才遇到了同样的问题,发现原因是我的编辑器(Visual Studio Code)在运行错误的python实例;我将它设置为再次运行与 tensorflow 捆绑的 python,我将其更改为我的 Anaconda python 并且它可以工作。

【讨论】:

【参考方案11】:

请注意: 对于 Anaconda 安装包命令:

    python setup.py install

【讨论】:

【参考方案12】:

如果您使用的是SPYDER IDE,只需尝试重新启动控制台或重新启动IDE,它就可以工作

【讨论】:

【参考方案13】:

我最近在 Mac 机器上使用 Anaconda 时也遇到了这个错误。

这是我发现的:

    运行python3 -m pip install PyMySql,后pymysql模块在/Library/Python/3.7/site-packages下 Anaconda 希望这个模块在/opt/anaconda3/lib/python3.8/site-packages

因此,将pymysql模块复制到指定路径后,就可以正常运行了。

【讨论】:

【参考方案14】:

导致出现错误消息的另一个常见问题与jupyter notebookjupyter lab 中的conda 环境有关。

在一个环境中成功安装模块(本例中为pymysql)后,import 可能看起来失败,因为环境没有正确注册。为了解决这个问题,需要为每个环境手动添加内核。

解决方案及更多详情请见here。

【讨论】:

【参考方案15】:

我尝试通过键入在命令提示符下安装 pymysql

pip install pymysql

但它仍然不适用于我的情况,所以我决定尝试使用终端 IDE 并且它可以工作。

【讨论】:

【参考方案16】:

我之前遇到了同样的问题,但解决的方式与我们这里的略有不同。所以,我想我也会添加我的方式。希望它会对某人有所帮助!

sudo apt-get install mysql-client 对我不起作用。但是,我已经安装了 Homebrew。所以,相反,我尝试了:

brew install mysql-client

现在,我不再收到错误消息了。

【讨论】:

【参考方案17】:

您也可以访问此留置权pip install PyMySQL

【讨论】:

以上是关于没有名为“pymysql”的模块的主要内容,如果未能解决你的问题,请参考以下文章

AWS 无法导入模块“app”:没有名为 Pymysql 的模块

ImportError:Mac OS 上没有名为 pymysql 的模块

没有名为'pymysql'的模块

没有名为 pymysql 的模块 - aws 无服务器框架

pymysql模块

Python 3.6.5 导入pymysql模块出错:No module named 'pymysql'