没有名为“pymysql”的模块
Posted
技术标签:
【中文标题】没有名为“pymysql”的模块【英文标题】:No module named 'pymysql' 【发布时间】:2016-01-31 11:46:18 【问题描述】:我正在尝试在 Ubuntu 上使用 Pymysql。
我已经使用pip
和pip3
安装了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 pymysql
跑python3
?
是的,我从 sudo 运行它。
奇怪,在我的系统上工作得很好。尝试运行sudo apt-get install python3-pymysql
。
就是这样!谢谢老哥!
已找到答案,但很高兴知道为什么会发生这种情况。你确定python3
和sudo 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-dev
和 pip install awscli
【参考方案4】:
如果sudo apt-get install python3-pymysql
对你不起作用,试试这个:
sudo python3 setup.py install
【讨论】:
此页面上提供的其他解决方案对我不起作用,只有这个。谢谢@Yash Gupta! 这个和上面的都不适合我,会尝试不同的连接器【参考方案5】:确保您使用的是您认为的 Python 版本。在 Python 中运行 import sys
和 print(sys.version)
。
选择正确的包管理器来安装 pymysql:
对于 Python 2.xsudo 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 notebook
和jupyter 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 的模块