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

 更新时间:2017年07月06日 08:38:16   作者:bladestone  
这篇文章主要给大家介绍了关于CentOS 7下sqlite3找不到问题的解决方法,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面跟着小编一起来学习学习吧。

本文主要给大家介绍的关于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运行环境之间的匹配的问题。

总结

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

您可能感兴趣的文章:

相关文章

  • 【专家教程】xmrig挖矿病毒清除攻略,保护你的服务器免受侵害!

    【专家教程】xmrig挖矿病毒清除攻略,保护你的服务器免受侵害!

    面对日益猖獗的XMRig挖矿病毒,是时候采取行动了!这份攻略将带你一步步清除这个隐蔽的威胁,让你的设备再次安全起来,快来看看我们的秘诀,让病毒无处遁形!
    2024-02-02
  • Linux系统中.bash_profile文件详解

    Linux系统中.bash_profile文件详解

    大家好,本篇文章主要讲的是Linux系统中.bash_profile文件详解,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2022-01-01
  • Linux关于透明大页的使用与禁用介绍

    Linux关于透明大页的使用与禁用介绍

    今天小编就为大家分享一篇关于Linux关于透明大页的使用与禁用介绍,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • CentOS7安装调试Mysql数据库的步骤详解【实例】

    CentOS7安装调试Mysql数据库的步骤详解【实例】

    这篇文章主要介绍了CentOS7安装调试Mysql数据库,本文分步骤通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-10-10
  • 安装CentOS 6.x报错

    安装CentOS 6.x报错"Disk sda contains BIOS RAID metadata"解决方法

    今天在安装CentOS6.2的时候,当进到检测硬盘的时候,总是过不去,报错如下: Disk sda contains BIOS RAID metadata, but is not part of any recognized BIOS RAID sets. Ignoring disk sda,真是不知如何解决,下面小编把我的思路分享到脚本之家平台,需要的朋友参考下
    2019-11-11
  • Linux中关于控制进程的命令总结

    Linux中关于控制进程的命令总结

    程序是一组可执行的静态指令集,而进程(process)是一个执行中的程序实例。下面这篇文章主要给大家介绍了Linux中关于控制进程的一些命令,包括Linux如何查看进程、杀死进程、启动进程等常用命令,下面来一起看看吧。
    2017-03-03
  • linux &、nohup与Systemctl的使用

    linux &、nohup与Systemctl的使用

    这篇文章主要介绍了linux &、nohup与Systemctl的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • 使用 libevent 和 libev 提高网络应用性能的方法

    使用 libevent 和 libev 提高网络应用性能的方法

    构建现代的服务器应用程序需要以某种方法同时接收数百、数千甚至数万个事件,无论它们是内部请求还是网络连接,都要有效地处理它们的操作
    2011-05-05
  • Linux 目录结构详细介绍

    Linux 目录结构详细介绍

    这篇文章主要介绍了Linux 目录结构详细介绍,文章内容介绍的很详细,有对于linux目录结构不是太了解的同学可以参考下
    2021-02-02
  • 手把手教你在腾讯云上搭建hadoop3.x伪集群的方法

    手把手教你在腾讯云上搭建hadoop3.x伪集群的方法

    这篇文章主要介绍了手把手教你在腾讯云上搭建hadoop3.x伪集群的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07

最新评论