web-dev-qa-db-fra.com

ImportError: aucun module nommé '_sqlite3' dans python3.3

erreur sqlite3

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

j'utilise la commande d'installation sqlite3

pip install pysqlite
Downloading/unpacking pysqlite
  Downloading pysqlite-2.6.3.tar.gz (76kB): 76kB downloaded
  Running setup.py Egg_info for package pysqlite
    Traceback (most recent call last):
      File "<string>", line 16, in <module>
      File "/usr/local/lib/python3.3/codecs.py", line 300, in decode
        (result, consumed) = self._buffer_decode(data, self.errors, final)
    UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe4 in position 98: invalid continuation byte 
    Complete output from command python setup.py Egg_info:
    Traceback (most recent call last):

  File "<string>", line 16, in <module>

  File "/usr/local/lib/python3.3/codecs.py", line 300, in decode

    (result, consumed) = self._buffer_decode(data, self.errors, final)

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe4 in position 98: invalid continuation byte

----------------------------------------
Cleaning up...
Command python setup.py Egg_info failed with error code 1 in /tmp/pip_build_root/pysqlite
Storing complete log in /root/.pip/pip.log
12
Droid

Je suis un utilisateur de Fedora 20. Pour résoudre ceci:

  1. Installez le package sqlite-devel, en utilisant:

    yum install sqlite-devel
    
  2. Après l'installation, recompilez python à partir de la source en utilisant:

    ./configure
    make && make install
    

Pour plusieurs versions de Python, utilisez altinstall au lieu de install.

20
Anshul Bisht

Je pense que tu dois pas installer sqlite3, tu peux faire comme ça

 apt-get install sqlite3  
 sqlite3 -version  
 apt-get install python-pysqlite2  
 apt-get install python-pysqlite2-dbg  
 apt-get install libsqlite3-dev   
 apt-get install sqlite  
 pip install pysqlite 

alors vous trouverez le sqlite3

9
wcc526

Le paquet de compilation est à court de quelque chose, vous devez utiliser yum pour installer ces 5, puis recompiler et installer python3

yum install readline-devel
yum install tk-devel
yum install tcl-devel  
yum install openssl-devel   
yum install sqlite-devel 

puis recompiler le python3

tar Jxvf  Python-3.5.0.tar.xz
cd Python-3.5.0
./configure --prefix=/usr/local/python3
make && make install
3
陈 章

Pour Python3 dans Ubuntu:

  • Sudo apt-get install libsqlite3-dev
  • wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tar.xz (remplacez le numéro de version par votre version python3)
  • tar -xf Python-3.6.3.tar.xz
  • cd Python-3.6.3/
  • ./configure --enable-loadable-sqlite-extensions && make && Sudo make install

voir: https://github.com/sloria/TextBlob/issues/17

2
R.Liu

J'ai touché ce problème en utilisant compilé 3.5.7

wget https://www.python.org/ftp/python/3.5.7/Python-3.5.7.tgz
tar xvfz Python-3.5.7.tgz
cd Python-3.5.7
./configure --enable-optimizations
Sudo make altinstall
# python3.5
>>> import sqlite3
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  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'

Solution:

yum install sqlite-devel
re-compile python 3.5 from source
1