ImportError:使用Python2时未找到mysql.connector模块
我有两个文件。第一个文件负责连接数据库和获取数据。我在这个文件里导入了mysql.connector。这个文件叫做tasksSql.py。
def get_users():
import mysql.connector
con = mysql.connector.connect(user='****', password='*****',
host='127.0.0.1',
database='tasks')
c = con.cursor()
users = []
c.execute("""SELECT * FROM task_user""")
for row in c:
user = {
'id': row[0],
'first': row[1],
'last': row[2],
'email': row[3],
'password': row[4],
'creation_date': row[5]
}
users.append(user)
c.close()
return users
当我单独运行这个文件时,它可以正常工作并返回数据。
我还有另一个文件,叫做tasks.py,我打算在这个文件里导入第一个文件,但这却不成功!当我导入这个文件时,它给我报了一个错误:
ImportError: No module named mysql.connector
我哪里做错了呢?
15 个回答
17
我在文件夹里有一个叫做mysql.py的文件。这就是为什么出现错误,因为在导入的时候,它试图调用这个文件。
import mysql.connector
我通过改文件名来解决了这个问题。
21
使用下面的命令
python -m pip install mysql-connector
21
在Ubuntu 16.04上,这个方法适用于Python 2.7:
sudo pip install mysql-connector
95
我遇到了类似的问题。我的环境信息是 -
Python 2.7.11
pip 9.0.1
CentOS 5.11 (最终版)
在Python解释器上出现的错误 -
>>> import mysql.connector
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named mysql.connector
>>>
使用pip来搜索可用的模块 -
$ pip search mysql-connector | grep --color mysql-connector-python
mysql-connector-python-rf (2.2.2) - MySQL driver written in Python
mysql-connector-python (2.0.4) - MySQL driver written in Python
安装mysql-connector-python-rf -
$ pip install mysql-connector-python-rf
验证一下
$ python
Python 2.7.11 (default, Apr 26 2016, 13:18:56)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-54)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import mysql.connector
>>>
73
根据你使用的Python版本和安装方式,可能没有安装mysql连接器。你可以通过pip来安装它。
要安装mysql连接器,可以使用以下命令:
pip install mysql-connector-python