ModuleNotFoundError: aucun module nommé '_sqlite3'
Nous avons différentes versions de python installées et utilisées spécifiquement python3.7, j'ai donc édité mon .bashrcfichier. Nous utilisons Centos7avec le Linuxserveur.
# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# Uncomment the following line if you don't like systemctl's auto-paging feature:
# export SYSTEMD_PAGER=
# User specific aliases and functions
alias python=python3.7
alias pip=pip3.7
[xyz@innolx20122 ~]$ python
python python2.7 python3.6 python3.7 python3.7m-config
python2 python3 python3.6m python3.7m
[xyz@innolx20122 ~]$ which sqlite3
/usr/bin/sqlite3
Son fonctionnement avec python2.7et python3.6version
[xyz@innolx20122 ~]$ python2.7
Python 2.7.5 (default, Apr 2 2020, 13:16:51)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sqlite3
[xyz@innolx20122 ~]$ python3.6
Python 3.6.8 (default, Apr 2 2020, 13:34:55)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sqlite3
Cela ne fonctionne pas avec la python3.7version
[xyz@innolx20122 ~]$ python3.7
Python 3.7.0 (default, Sep 3 2020, 09:25:25)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] 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.7/sqlite3/__init__.py", line 23, in <module>
from sqlite3.dbapi2 import *
File "/usr/local/lib/python3.7/sqlite3/dbapi2.py", line 27, in <module>
from _sqlite3 import *
ModuleNotFoundError: No module named '_sqlite3'
Mise à jour-
Nous avons installé python en suivant les instructions dans le lien ci-dessous Lien d' installation Python3.7
Par conséquent, ma python3.7version est installée au niveau racine
[root@innolx20122 ~]# ls
anaconda-ks.cfg Python-3.7.0 Python-3.7.0.tgz
[root@innolx20122 ~]# cd Python-3.7.0
[root@innolx20122 Python-3.7.0]# ls
aclocal.m4 config.status Doc Lib Mac Misc PC pyconfig.h python-config setup.py
build config.sub Grammar libpython3.7m.a Makefile Modules PCbuild pyconfig.h.in python-config.py Tools
config.guess configure Include LICENSE Makefile.pre Objects Programs python python-gdb.py
config.log configure.ac install-sh m4 Makefile.pre.in Parser pybuilddir.txt Python README.rst
J'ai vu un lien sur le débordement de pile suggérant une solution de contournement. résoudre le problème Sqlite3
Veuillez suggérer s'il est correct d'exécuter les commandes ci-dessous à partir du même répertoire racine lui-même
yum install sqlite-devel
./configure
make && make altinstall
Réponses
Je me suis connecté en tant rootqu'utilisateur.
[root@innolx20122 ~]# ls
anaconda-ks.cfg Python-3.7.0 Python-3.7.0.tgz
puis accédez au Python-3.7.0répertoire
[root@innolx20122 Python-3.7.0]# ls
aclocal.m4 config.status Doc Lib Mac Misc PC pyconfig.h python-config setup.py
build config.sub Grammar libpython3.7m.a Makefile Modules PCbuild pyconfig.h.in python-config.py Tools
config.guess configure Include LICENSE Makefile.pre Objects Programs python python-gdb.py
config.log configure.ac install-sh m4 Makefile.pre.in Parser pybuilddir.txt Python README.rst
a ensuite exécuté les commandes ci-dessous pour résoudre le problème.
yum install sqlite-devel
./configure
make && make altinstall
[xyz@innolx20122 ~]$ python3.7
Python 3.7.0 (default, Sep 26 2020, 23:18:27)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sqlite3
>>>