2017-03-13 41 views
5

Zainstalowałem Python3.6 na ubuntu16.04 i zainstalowałem sqlite3. Kiedy w python2, mogę importować sqlite pomyślnie, ale w python3 dostałem błąd importu. Próbowałem wielu metod od Google, ale nadal nie działa. Chcę wiedzieć, jak go rozwiązać.python3.6 import błąd sqlite3

Python 3.6.0 (default, Mar 13 2017, 06:38:19) 
[GCC 5.4.0 20160609] on linux 
Type "help", "copyright", "credits" or "license" for more information. 

> import sqlite3 

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/usr/local/lib/python3.6/sqlite3/__init__.py", line 23, in <module> 
    from sqlite3.dbapi2 import * 
    File "/usr/local/lib/python3.6/sqlite3/dbapi2.py", line 27, in <module> 
    from _sqlite3 import * 

ModuleNotFoundError: No module named '_sqlite3' 
+3

Jak dokładnie zainstalować Python 3? Jak dokładnie zainstalowałeś moduł SQLite? –

+0

Skompilowałem kod źródłowy do zainstalowanego Pythhon 3. i zainstalowanego sqlite z "sudo apt-get install sqlite3" – dragon

+0

Polecam, że zamiast kompilować źródło samodzielnie, instalujesz je z gotowego pakietu. Instrukcje tutaj: http://askubuntu.com/questions/865554/how-do-i-install-python-3-6-using-apt-get –

Odpowiedz

2

Możesz zainstalować python3 i sqlite samodzielnie. try this.

Albo można spróbować go w następujący sposób:

 
1. install sqlite3 
$ wget https://www.sqlite.org/2017/sqlite-autoconf-3170000.tar.gz --no-check-certificate 
$ tar zxvf sqlite-autoconf-3170000.tar.gz 
$ cd sqlite-autoconf-3170000 
$ ./configure --prefix=/usr/local/sqlite3 --disable-static --enable-fts5 --enable-json1 CFLAGS="-g -O2 -DSQLITE_ENABLE_FTS3=1 -DSQLITE_ENABLE_FTS4=1 -DSQLITE_ENABLE_RTREE=1" 

2. install python3.6 
$ cd Python-3.6.0 
$ LD_RUN_PATH=/usr/local/sqlite3/lib ./configure --prefix=/usr/local/python3.6 LDFLAGS="-L/usr/local/sqlite3/lib" CPPFLAGS="-I /usr/local/sqlite3/include" 
$ LD_RUN_PATH=/usr/local/sqlite3/lib make 
$ LD_RUN_PATH=/usr/local/sqlite3/lib make install 

+0

dzięki, zainstalowałem python3.6 i sqlite jako poniżej, ale nadal nie działa.i następnie znalazłem Python3.5 na ubuntu16.04, które można zaimportować sqlite3 udane – dragon

+0

Jeśli Python3.5 działa dobrze, myślę, że można skopiować plik * .so bezpośrednio do lokalizacji python3.6. – ismtlee