Python AttributeError:'module'对象没有属性'connect'

msc*_*der 8 python sqlite connection

我正在尝试使用Ubuntu(Xubuntu 14.04)和预安装的Python版本创建一个带有sqlite3数据库的程序.我试过,如果第一行正在运行,但已经有错误.我安装了"python-sqlite"和"sqlite3".有人可以帮忙吗?

import sqlite3 

connection = sqlite3.connect('test.db')
cursor = connection.cursor()

cursor.execute('CREATE TABLE test ( id INTEGER, first INTEGER, second TEXT, third TEXT, other INTEGER)')

connection.commit()
Run Code Online (Sandbox Code Playgroud)

输出是:

user@device:~/folder$ python sqlite3.py 
Traceback (most recent call last):
File "sqlite3.py", line 1, in <module>
import sqlite3 
File "/home/michael/ownCloud/sqlite3.py", line 3, in <module>
connection = sqlite3.connect('test.db')
AttributeError: 'module' object has no attribute 'connect'
Run Code Online (Sandbox Code Playgroud)

提前致谢!

unu*_*tbu 12

错误消息显示您已命名文件sqlite3.py:

/home/michael/ownCloud/sqlite3.py"
Run Code Online (Sandbox Code Playgroud)

掩盖了同名的标准模块.你sqlite3.py没有定义connect,因此错误.解决方案是将您的文件重命名为其他内容.

正如Jim Raynor指出的那样,导入sqlite3还将创建一个.pyc文件,在找到标准库中/home/michael/ownCloud/sqlite3模块之前,还必须删除该文件.