Jupyter缺少_sqlite3和pysqlite2

时间:2017-08-08 10:00:37

标签: linux python-3.x sqlite jupyter-notebook pysqlite

尝试在Python3.5上运行jupyter(ipython3),我使用

安装它
sudo pip3 install jupyter

然而,当尝试启动jupyter笔记本时,我收到模块_sqlite3和pysqlite2缺失的错误。我尝试通过pip3安装它们。对于pysqlite2,似乎没有可用的版本(?)。对于sqlite3,我得到了

  

RuntimeError:不得从pypi

下载包'sqlite3'
Traceback (most recent call last):   File "/usr/local/lib/python3.5/site-packages/notebook/services/sessions/sessionmanager.py", line 10, in <module>
    import sqlite3   File "/usr/local/lib/python3.5/sqlite3/__init__.py", line 23, in <module>
    from sqlite3.dbapi2 import *   File "/usr/local/lib/python3.5/sqlite3/dbapi2.py", line 27, in <module>
    from _sqlite3 import * ImportError: No module named '_sqlite3'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "/usr/local/bin/jupyter-notebook", line 7, in <module>
    from notebook.notebookapp import main
  File "/usr/local/lib/python3.5/site-packages/notebook/notebookapp.py", line 79, in <module>
    from .services.sessions.sessionmanager import SessionManager
  File "/usr/local/lib/python3.5/site-packages/notebook/services/sessions/sessionmanager.py", line 13, in <module>
    from pysqlite2 import dbapi2 as sqlite3
ImportError: No module named 'pysqlite2'

有什么想法吗?

4 个答案:

答案 0 :(得分:1)

构建Python3时我遗失了libsqlite3-dev。 所以在运行sudo apt-get install libsqlite3-dev并重建Python3之后,现在似乎一切正常。

答案 1 :(得分:1)

我使用Centos 7,并从源代码构建了Python3.8。确实,正如Suppenkasper所说的那样,在使用sudo yum install libsqlite3x-devel.x86_64重建Python3.8之前,我需要先sudo make altinstall

您可以通过yum list | grep sqlite找到确切的sqlite软件包名称。

答案 2 :(得分:0)

我必须重新安装python,它才能再次工作。

答案 3 :(得分:0)

我在 jupyter notebook 中遇到了同样的错误。 我已经在我的 tmp 文件夹中从源代码安装了 python 3.7.2 Ubuntu 16.04.7 LTS (Xenial Xerus)。 它缺少 libsqlite3-dev 所以首先使用

安装libsqlite3-dev
$ sudo apt-get install libsqlite3-dev

然后重建你的python 3.7.2,来做到这一点 在我的情况下,转到您的 python 安装文件夹 /tmp/python-3.7.2 并运行

$ cd /tmp/Python-3.7.2
$ ./configure --enable-optimizations
$ sudo make altinstall