如何在Python 2.4中导入sqlite3模块?

7 投票
4 回答
13593 浏览
提问于 2025-04-15 11:14

sqlite3模块在Python 2.5及以上版本中是自带的。不过,我现在用的是2.4版本,所以遇到了一些问题。我上传了sqlite3模块的文件,并把这个文件夹加到了sys.path里,但当我尝试导入它时,出现了以下错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in ?
  File "sqlite3/__init__.py", line 23, in ?
    from dbapi2 import *
  File "sqlite3/dbapi2.py", line 26, in ?
    from _sqlite3 import *
ImportError: No module named _sqlite3

文件'_sqlite3'在lib-dynload文件夹里,但如果我把它放进sqlite3的文件夹里,就会出现更多错误。

有没有什么建议?我现在的环境有限,像GCC这样的工具我都没法用。

4 个回答

1

你需要安装 pysqlite。不过要注意,这个安装是必须要有编译器的,除非你能在网上找到适合它(和Python 2.4)的二进制文件。使用2.5版本的二进制文件是不可行的。

1

你安装了吗?通常这样做比去改动 sys.path 要好。

python setup.py install

如果安装了,你应该能找到它。

如果因为某种原因你不能安装它,那就设置一下 PYTHONPATH 这个环境变量。不要养成随便改动 sys.path 的习惯。

13

我在CentOS和Python 2.4上也遇到了同样的问题。

我的解决办法是:

yum install python-sqlite2

然后试试下面的Python代码:

try:
    import sqlite3
except:
    from pysqlite2 import dbapi2 as sqlite3

撰写回答