python使用mysql-connector-python连接mysql时报错No module named 'mysql.connector'; 'mysql' is not a package

情况是这样的:

我在项目A下创建了一个python文件,编写代码

import mysql.connector

mydb = mysql.connector.connect(
    host="hostname",  # 数据库主机地址
    port='port',
    user="root",  # 数据库用户名
    passwd="password",  # 数据库密码
    database='databasename'
)
print(mydb)

运行时报错,错误信息为

No module named 'mysql.connector'; 'mysql' is not a package

 

机智的我无路可走,在项目B下创建了一个python文件,把刚刚的代码复制过去,竟然可以运行,很神奇对吧!

 

可是,为什么会这样呢???没有道理啊!

知道后来,我才发现,项目A下有一个名字叫做 mysql.py 的文件

python使用mysql-connector-python连接mysql时报错No module named 'mysql.connector'; 'mysql' is not a package_第1张图片

原来,这个玩意就是万恶之源啊

我的代码

import mysql.connector

直接就找这个mysql.py文件,而不是运行系统自带的mysql模块。

于是我把mysql.py名字改成mysql1.py,效果立竿见影!

python使用mysql-connector-python连接mysql时报错No module named 'mysql.connector'; 'mysql' is not a package_第2张图片

看到了吧,我写的代码也跟着改了,这恰恰证明,这个 

import mysql.connector

是连接到项目里面的mysql.py文件,而不是连接到系统的mysql模块。

我们再把

import mysql1.connector  改成  import mysql.connector

问题解决。

你可能感兴趣的:(python)