我正在尝试使用IDLE3连接到MySQl数据库。这条线
import MySQLdb
生成错误消息:
ImportError:没有名为'MySQLdb'的模块
我正在使用Linux(Ubuntu 14.04)
Python在我的计算机上存在两个版本。一个版本:Python 2.7.6。导入“ MySQLD ”的功能适用于此版本的Python。
另一个版本是Python 3.4.0。导入“ MySQLD ”的功能不适用于此版本。
虽然我知道有两个版本,但我不知道输入文本“ python ”本身会给你Python版本2.7.6。 IDLE3的目的是使用Python 3.4.0版本。我在下面的回复中根据holdenweb提供的线索实现了我的疏忽。
基于进一步的互联网搜索,至少可以为Ubuntu提供解决方案。
答案 0 :(得分:1)
问题似乎是IDLE和Python并没有使用完全相同的环境。变量{
"Inputs": {"input1": {
"ColumnNames": [
"Case Number",
"Case Type",
"Address",
"Description",
"Case Group",
"Date Case Created",
"Last Inspection Date",
"Last Inspection Result",
"Status",
"Permit and Complaint Status URL",
"Latitude",
"Longitude",
"Location"
],
"Values": [
[
"0",
"value",
"value",
"value",
"value",
"",
"",
"value",
"value",
"value",
"0",
"0",
"value"
],
[
"0",
"value",
"value",
"value",
"value",
"",
"",
"value",
"value",
"value",
"0",
"0",
"value"
]
]
}
},
"GlobalParameters": {}}
包含Python解释器将搜索已被要求导入的库的目录列表。如果您在普通的Python解释器和IDLE中执行以下代码,您应该会看到一些差异:
sys.path
您可以通过导入{然后执行
来找出import sys
print "\n".join(sys.path)
库所在的目录
MySQLdb
如果该目录未显示在print MySQLdb.__file__
中,则需要添加该目录。通常的方法是设置PYTHONPATH环境变量。您可以在Python文档中找到如何为特定环境设置它。
答案 1 :(得分:1)
对于Ubuntu的用户,确实存在一种解决方案。进入Synaptic Package Manager并找到包" python3-mysql.connector "版本1.1.6-1。它也可以从Ubuntu软件中心获得。这是与MySQL的Python 3.4.0连接。我不知道这是否是最新版本。
另请参阅:Connecting to MySQL Using Connector/Python
Python版本Python 2.7.6还有一个较新的Python连接。 Connector/Python 2.0.4。我摆弄了这个连接器,但显然它与Python 3.4.0不兼容。