由于centos系统自带的Python是2.6版本的,所以我对Python进行了升级,但是在安装nltk模块后导入包括,显示没有sqlite3模块,故谷歌一下寻找到如下解决方案。
报错如下
>>> import sqlite3
Traceback (most recent call last):
File <stdin>, line 1, in <module>
File /usr/local/lib/python2.7/sqlite3/__init__.py, line 24, in <module>
from dbapi2 import *
File /usr/local/lib/python2.7/sqlite3/dbapi2.py, line 27, in <module>
from _sqlite3 import *
ImportError: No module named _sqlite3
解决方法
centos 6.2 默认没有安装sqlite-devel,所以要先安装sqlite-devel,再编译升级python,才可以使用sqlite3库。
- 首先使用如下命令安装sqlite_devel
yum install -y sqlite-devel
- 进入Python的安装包文件夹,对Python进行重新编译,这里默认你已经成功升级了Python,如果还没有升级Python的话,你可以谷歌一下升级方案,进行Python升级。对python重新编译的命令如下
tar vxf Python-2.7.2.tar
./configure
make && make install
- 验证是否成功
# python
Python 2.7.2 (default, Aug 1 2012, 14:37:32)
[GCC 4.4.6 20120305 (Red Hat 4.4.6-4)] on linux2
Type help, copyright,credits or license for more information.
>>> import sqlite3
没有报错,所以成功的解决了问题。
参考文章: