Python3不支持sqlite3的解决方法

先贴报错:

python 复制代码
>>> import sqlite3
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.10/sqlite3/__init__.py", line 57, in <module>
    from sqlite3.dbapi2 import *
  File "/usr/local/lib/python3.10/sqlite3/dbapi2.py", line 27, in <module>
    from _sqlite3 import *
ModuleNotFoundError: No module named '_sqlite3'

在网上查了一下,居然要我先安装sqlite3,再重新编译安装python,真无语了,奈何开发环境是Windows,话不多说,连上Centos开搞吧:

一、安装sqlite3的包

python 复制代码
yum install -y sqlite-devel

我这里把各个服务器都装上了,准备全都搞一遍,免得后面麻烦,请告诉我还是什么是不支持的吧,真想全都先装了再编译,其他都还好,主要是费时间。

二、重新编译python

看看_sqlite3.so这个动态库在什么地方,等会儿编译的时候需要链接。

复制代码
[root@he Python-3.10.11]# find / -name _sqlite3.so
/usr/lib64/python2.7/lib-dynload/_sqlite3.so

看看python的系统路径都在什么地方:

python 复制代码
>>> import sys
>>> print(sys.path)     
['', '/usr/local/lib/python3.10/site-packages', '/var/local/Python-3.10.11', '/usr/local/lib/python310.zip', '/usr/local/lib/python3.10', '/usr/local/lib/python3.10/lib-dynload']

将这个动态库拷贝到python的动态库中(干嘛要去掉呢)
cp /usr/lib64/python2.7/lib-dynload/_sqlite3.so /usr/local/lib/python3.10/lib-dynload/

这样把sqlite3的动态库拷贝到python的系统环境变量下的动态库路径中,后面编译的时候就省事了。

进入到python安装包的目录,然后就开始编译吧,等编译完成

python 复制代码
make clean
./configure

make && make install

ok,编译好了,再import一下sqlite3

复制代码
>>> import sqlite3
>>> 

没有报错,那就是成功了。

相关推荐
爱隐身的官人几秒前
cfshow-web入门-php特性
python·php·ctf
gb421528720 分钟前
java中将租户ID包装为JSQLParser的StringValue表达式对象,JSQLParser指的是?
java·开发语言·python
JAVA不会写21 分钟前
在Mybatis plus中如何使用自定义Sql
数据库·sql
IT 小阿姨(数据库)22 分钟前
PgSQL监控死元组和自动清理状态的SQL语句执行报错ERROR: division by zero原因分析和解决方法
linux·运维·数据库·sql·postgresql·centos
THMAIL24 分钟前
量化股票从贫穷到财务自由之路 - 零基础搭建Python量化环境:Anaconda、Jupyter实战指南
linux·人工智能·python·深度学习·机器学习·金融
~-~%%26 分钟前
从PyTorch到ONNX:模型部署性能提升
人工智能·pytorch·python
蒋星熠31 分钟前
Flutter跨平台工程实践与原理透视:从渲染引擎到高质产物
开发语言·python·算法·flutter·设计模式·性能优化·硬件工程
ChinaRainbowSea1 小时前
7. LangChain4j + 记忆缓存详细说明
java·数据库·redis·后端·缓存·langchain·ai编程
爬虫程序猿1 小时前
《京东商品详情爬取实战指南》
爬虫·python
胡耀超1 小时前
4、Python面向对象编程与模块化设计
开发语言·python·ai·大模型·conda·anaconda