ImportError:使用Python2时未找到mysql.connector模块

62 投票
15 回答
293065 浏览
提问于 2025-04-18 10:08

我有两个文件。第一个文件负责连接数据库和获取数据。我在这个文件里导入了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

撰写回答