Python 无法识别 mysql.connector,即使我安装了它?

Python won't recognize mysql.connector even though I have it installed?

我用 pip 安装了 mysql 连接器,所以现在我有:

$ pip install mysql-connector
Requirement already satisfied: mysql-connector in /usr/local/lib/python2.7/dist-packages

我也试过:

$ pip install mysql-connector-python-rf
Requirement already satisfied: mysql-connector-python-rf in /usr/local/lib/python2.7/dist-packages

现在在我的测试文件中我只有:

import mysql.connector
from mysql.connector import errorcode

但是当我 运行 我得到:

$ python mysqlTest.py 
Traceback (most recent call last):
  File "mysqlTest.py", line 1, in <module>
      import mysql.connector
  File "/home/user/mysql.py", line 1, in <module>
ImportError: No module named connector

我 运行正在 ubuntu 上,只是为了验证一下,这是我的 python 版本:

$ python --version
Python 2.7.12

有什么想法吗?

听起来你的模块路径有问题。也许您正在导入错误的模块。我会尝试 print mysql.__file__ 以确保您导入了正确的模块。

此外,使用 virtualenv 几乎可以保证解决此类问题,这些问题通常源于不同 Python 解释器和/或具有相似名称的模块之间的冲突。

使用虚拟环境

  1. 运行 pip install virtualenv 安装 virtualenv。
  2. 运行 virtualenv venv 在当前目录中创建一个 Python 虚拟环境。
  3. 运行source venv/bin/activate激活虚拟环境
  4. 像往常一样使用 pip 安装依赖项 (mysql),然后再次尝试 运行 脚本。

有关 virtualenv 的更多信息,请参见 official docs