欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

关于CentOS 7下sqlite3找不到的问题解决

程序员文章站 2022-06-29 22:08:53
本文主要给大家介绍的关于centos 7下sqlite3找不到问题的解决方法,分享出来供大家参考学习,下面来一起看看详细的介绍: centos7下的nltk启动问题 c...

本文主要给大家介绍的关于centos 7下sqlite3找不到问题的解决方法,分享出来供大家参考学习,下面来一起看看详细的介绍:

centos7下的nltk启动问题

centos 7, python 3.6,ipython 6.0.0

问题描述

ipython

启动ipython命令

import nltk

爆出以下的错误信息:

in [1]: import nltk
---------------------------------------------------------------------------
modulenotfounderror      traceback (most recent call last)
<ipython-input-1-b06499430ee0> in <module>()
----> 1 import nltk

/opt/python36env/lib/python3.6/site-packages/nltk/__init__.py in <module>()
 135 from nltk.translate import *
 136 from nltk.sem import *
--> 137 from nltk.stem import *
 138 
 139 # packages which can be lazily imported

/opt/python36env/lib/python3.6/site-packages/nltk/stem/__init__.py in <module>()
  27 from nltk.stem.isri import isristemmer
  28 from nltk.stem.porter import porterstemmer
---> 29 from nltk.stem.snowball import snowballstemmer
  30 from nltk.stem.wordnet import wordnetlemmatizer
  31 from nltk.stem.rslp import rslpstemmer

/opt/python36env/lib/python3.6/site-packages/nltk/stem/snowball.py in <module>()
  24 
  25 from nltk import compat
---> 26 from nltk.corpus import stopwords
  27 from nltk.stem import porter
  28 from nltk.stem.util import suffix_replace

/opt/python36env/lib/python3.6/site-packages/nltk/corpus/__init__.py in <module>()
  64 from nltk.tokenize import regexptokenizer
  65 from nltk.corpus.util import lazycorpusloader
---> 66 from nltk.corpus.reader import *
  67 
  68 abc = lazycorpusloader(

/opt/python36env/lib/python3.6/site-packages/nltk/corpus/reader/__init__.py in <module>()
 103 from nltk.corpus.reader.categorized_sents import *
 104 from nltk.corpus.reader.comparative_sents import *
--> 105 from nltk.corpus.reader.panlex_lite import *
 106 
 107 # make sure that nltk.corpus.reader.bracket_parse gives the module, not

/opt/python36env/lib/python3.6/site-packages/nltk/corpus/reader/panlex_lite.py in <module>()
  13 
  14 import os
---> 15 import sqlite3
  16 
  17 from nltk.corpus.reader.api import corpusreader

/usr/local/lib/python3.6/sqlite3/__init__.py in <module>()
  21 # 3. this notice may not be removed or altered from any source distribution.
  22 
---> 23 from sqlite3.dbapi2 import *

/usr/local/lib/python3.6/sqlite3/dbapi2.py in <module>()
  25 import collections.abc
  26 
---> 27 from _sqlite3 import *
  28 
  29 paramstyle = "qmark"

modulenotfounderror: no module named '_sqlite3'

从错误信息来分析,可以发现,就是sqlite3找不到而已。

问题分析与解决

那就尝试看看sqlite3是否已经安装:

yum search sqlite3

yum search sqlite3
loaded plugins: fastestmirror
loading mirror speeds from cached hostfile
=============================================================================== n/s matched: sqlite3 ================================================================================
libsqlite3x.x86_64 : a c++ wrapper for the sqlite3 embeddable sql database engine
libsqlite3x-devel.x86_64 : development files for libsqlite3x
preludedb-sqlite3.x86_64 : plugin to use prelude with a sqlite3 database
rubygem-sqlite3.x86_64 : allows ruby scripts to interface with a sqlite3 database
rubygem-sqlite3-doc.noarch : documentation for rubygem-sqlite3
soci-sqlite3.x86_64 : sqlite3 back-end for soci
soci-sqlite3-devel.x86_64 : sqlite3 back-end for soci
uwsgi-plugin-sqlite3.x86_64 : uwsgi - sqlite3 plugin
dspam-sqlite3.x86_64 : sqlite v3.x storage driver for libdspam
golang-googlecode-sqlite-devel.i686 : trivial sqlite3 binding for go
golang-googlecode-sqlite-devel.x86_64 : trivial sqlite3 binding for go
libsq3.x86_64 : a c++ wrapper for the sqlite3 embeddable sql database engine
libsq3-devel.x86_64 : development files for libsqlite3x
opendbx-sqlite.x86_64 : sqlite 3 backend - provides sqlite3 support in opendbx
python-sqlite3dbm.noarch : sqlite-backed dictionary conforming to the dbm interface
sqlite-devel.i686 : development tools for the sqlite3 embeddable sql database engine
sqlite-devel.x86_64 : development tools for the sqlite3 embeddable sql database engine
sqlite-tcl.x86_64 : tcl module for the sqlite3 embeddable sql database engine
sqlite3-dbf.x86_64 : converter of xbase / foxpro tables to sqlite
zabbix20-proxy-sqlite3.x86_64 : zabbix proxy compiled to use sqlite
zabbix22-dbfiles-sqlite3.noarch : zabbix database schemas and patches
zabbix22-proxy-sqlite3.x86_64 : zabbix proxy compiled to use sqlite

找到了sqlite3-devel,那就安装好了

yum install sqlite-devel

yum install sqlite-devel
loaded plugins: fastestmirror
loading mirror speeds from cached hostfile
resolving dependencies
--> running transaction check
---> package sqlite-devel.x86_64 0:3.7.17-8.el7 will be installed
--> finished dependency resolution

dependencies resolved

=====================================================================================================================================================================================
 package          arch          version          repository        size
=====================================================================================================================================================================================
installing:
 sqlite-devel         x86_64         3.7.17-8.el7         base         104 k

transaction summary
=====================================================================================================================================================================================
install 1 package

total download size: 104 k
installed size: 366 k
is this ok [y/d/n]: y
downloading packages:
sqlite-devel-3.7.17-8.el7.x86_64.rpm                               | 104 kb 00:00:00  
running transaction check
running transaction test
transaction test succeeded
running transaction
 installing : sqlite-devel-3.7.17-8.el7.x86_64                                 1/1 
 verifying : sqlite-devel-3.7.17-8.el7.x86_64                                 1/1 

installed:
 sqlite-devel.x86_64 0:3.7.17-8.el7                                     

complete!

问题没有解决

重新启动ipython

import nltk

但是问题依然存在,哪里出的问题呢?

问题最终解决

虽然安装了sqlite3的数据库,但是对于ipython的环境来说,确实无法找到sqlite3。

于是,我重新编译,并且安装了一下python3。

注意: 这个是在sqlite3安装成功之后,在安装python的运行环境。

于是重新启动ipython,问题消逝,一切正常,本质上就是sqlite3的安装,以及sqlite3与python运行环境之间的匹配的问题。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。