升级Python后sqlite3后报错解决方案

由于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库。

  1. 首先使用如下命令安装sqlite_devel
    yum install -y sqlite-devel
  2. 进入Python的安装包文件夹,对Python进行重新编译,这里默认你已经成功升级了Python,如果还没有升级Python的话,你可以谷歌一下升级方案,进行Python升级。对python重新编译的命令如下
tar vxf Python-2.7.2.tar
./configure
make && make install
  1. 验证是否成功
# 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

没有报错,所以成功的解决了问题。

参考文章:

    原文作者:葡萄芽儿
    原文地址: https://www.jianshu.com/p/fd632477e7b2
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞