有人能告诉我如何在最新版本的 Python 旁边安装 sqlite3 模块吗?我正在使用 Macbook,在命令行上,我尝试了:
pip install sqlite
但会弹出一个错误。
您不需要安装sqlite3
模块。它包含在标准库中(从 Python 2.5 开始)。
对于 Python 版本 3:
pip install pysqlite3
我有 python 2.7.3,这解决了我的问题:
pip install pysqlite
通常,它包括在内。但是,正如@ngn999 所说,如果您的python 是手动从源代码构建的,则必须添加它。
这是一个脚本示例,它将在您的用户目录中设置 Python3 的封装版本(虚拟环境),其中包含 sqlite3的封装版本。
INSTALL_BASE_PATH="$HOME/local"
cd ~
mkdir build
cd build
[ -f Python-3.6.2.tgz ] || wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz
tar -zxvf Python-3.6.2.tgz
[ -f sqlite-autoconf-3240000.tar.gz ] || wget https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
tar -zxvf sqlite-autoconf-3240000.tar.gz
cd sqlite-autoconf-3240000
./configure --prefix=${INSTALL_BASE_PATH}
make
make install
cd ../Python-3.6.2
LD_RUN_PATH=${INSTALL_BASE_PATH}/lib configure
LDFLAGS="-L ${INSTALL_BASE_PATH}/lib"
CPPFLAGS="-I ${INSTALL_BASE_PATH}/include"
LD_RUN_PATH=${INSTALL_BASE_PATH}/lib make
./configure --prefix=${INSTALL_BASE_PATH}
make
make install
cd ~
LINE_TO_ADD="export PATH=${INSTALL_BASE_PATH}/bin:\$PATH"
if grep -q -v "${LINE_TO_ADD}" $HOME/.bash_profile; then echo "${LINE_TO_ADD}" >> $HOME/.bash_profile; fi
source $HOME/.bash_profile
为什么要这样做?您可能需要一个模块化的 Python 环境,您可以在不影响托管包安装的情况下完全销毁和重建它。这将为您提供一个独立的开发环境。在这种情况下,解决方案也是模块化安装 sqlite3。
如果您在 python 中内置的 Sqlite 中出现错误,您可以使用 Conda 来解决此冲突
conda install sqlite