【第22期】观点:IT 行业加班,到底有没有价值?

Bluemix上Python应用启动ERR import MySQLdb ImportError: No module named MySQLdb

原创 2016年06月01日 22:01:45

在将“Bluemix云端数据库服务ClearDB MySQL使用示例———Python开发投票程序”的程序通过“cf”工具上传到Bluemix上后,启动失败,根据提示使用“cf logs pyVote --recent”命令查看日志中提示:ERR import MySQLdb ImportError: No module named MySQLdb,如下图:



解决方法:

修改项目中的“requirements.txt”文件。

这是一个纯文本的文件,只要在里面添加一句就可以:

MySQL-python==1.2.3
然后再执行:

cf push pyVote
上传应用程序代码,之后就会看到类似的提示:


Bluemix中会使用pip根据“requirements.txt”文件中声明的依赖项去安装所需要的依赖,安装成功后就可以启动成功了。

关于“requirements.txt”文件

Bluemix是使用“requirements.txt”文件名,而实际应该是“requirements.pip”,这是 pip(包管理工具)的功能。

pip 可以根据 requirements.txt 安装类库。

在很多Python项目中都包含一个requirements.pip文件,里面写的是一些包的名称和版本之类的信息,这是做什么用的呢?
比如一个requirements.pip文件内容如下:

html5lib==0.999
ipdb==0.8
ipython==2.3.1
mongo==0.2.0
path.py==7.0
python-dateutil==2.3
requests==2.5.0
unicodecsv==0.9.4
这里面写的是运行这个项目所需要的环境,包括一些库,运行之前需要使用pip install -r requirements.pip命令安装这些库。

Python项目中经常会带requirements.txt文件,里面是项目所依赖的包的列表,也就是依赖关系清单,这个清单也可以使用pip命令自动生成。
pip命令:

pip freeze > requirements.txt
这样就自动生成requirements.txt了。如果需要生成在虚拟环境下的依赖关系,需要先进入虚拟环境。

版权声明:本文为 testcs_dn(微wx笑) 原创文章,非商用自由转载-保持署名-注明出处,谢谢。 举报

相关文章推荐

Python安装模块出错(ImportError: No module named setuptools)解决方法

Python第三方模块中一般会自带setup.py文件,在Windows环境下,我们只需要使用命令 <p style="margin-top: 0pt; margin-bottom: 0pt; border:

python脚本执行时报ImportError: No module named MySQLdb的处理

一.问题描述 执行py脚本时,提示ImportError: No module named MySQLdb错误,如下: [root@mvxl0783 sh]# python 1.py Tracebac...

程序员升职加薪指南!还缺一个“证”!

CSDN出品,立即查看!

ImportError: No module named MyPackage

错误:ImportError: No module named MyPackage 分析:虽然在目录MyPackage中创建了_init_.py文件,但依旧报以上错误,经分析,是__init__.py文件写成了_init_.py,少写了一个下划线,所以无法识别到MyPackage这个包。

ImportError: No module named MySQLdb最有效最简洁解决方法

只需要敲一行代码即可 $sudo apt-get install python-mysqldb

无法import的原因(ImportError: No module named *****)

python中,每个py文件被称之为模块,每个具有__init__.py文件的目录被称为包。只要模块或者包所在的目录在sys.path中,就可以使用import 模块或import 包来使用。 如果想使用非当前模块中的代码,需要使用Import,这个大家都知道。 如果你要使用的模块(py文件...
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)