pip简介

常用命令

安装依赖包

1
pip install package_name

用于安装指定名称的依赖包。

安装指定版本的依赖包

1
pip install package_name==version_number

用于安装指定名称和版本号的依赖包。

升级依赖包

1
pip install --upgrade package_name

用于升级已安装的依赖包至最新版本。

列出已安装的依赖包

1
pip list

用于列出当前环境中已安装的所有依赖包及其版本号。

卸载依赖包

1
pip uninstall package_name

用于卸载指定名称的依赖包。

导出依赖包列表

1
pip freeze > requirements.txt

用于将当前环境中已安装的依赖包及其版本号导出到一个文本文件(一般命名为requirements.txt),方便在其他环境中重现相同的依赖包配置。

从requirements.txt文件安装依赖包:

1
pip install -r requirements.txt

用于从指定的requirements.txt文件中安装所有依赖包及其版本号。

搜索依赖包

1
pip search search_term

虚拟环境

如果你使用的是Linux环境,会满足多个Python版本的兼容:

1
2
3
4
5
ls /usr/bin/python*  

/usr/bin/python /usr/bin/python2.7-config /usr/bin/python3.11 /usr/bin/python3.8-config
/usr/bin/python2 /usr/bin/python2-config /usr/bin/python3.11-config /usr/bin/python3-config
/usr/bin/python2.7 /usr/bin/python3 /usr/bin/python3.8 /usr/bin/python-config

可见我的Linux环境安装了python3.11(默认)、python2.7、python3.8。

默认情况下使用pip命令是使用python3.11的/usr/lib/python3.11/site-packages目录下的pip,检查其他存在的Python真实环境目录下没有安装pip。

此时会有一个问题就是我使用创建虚拟环境的命令会不会只使用Python3.11(默认)环境下的依赖?答案是:不会。

创建虚拟环境

进入项目根目录

使用指定版本Python创建虚拟环境目录为venv

1
python3.8 -m venv venv       

执行完成你会发现多了一个venv的目录

查看虚拟环境文件

打印以下其实已经说明,指定Python版本即使真实环境不存在pip,使用指定版本的虚拟环境也是自带pip的

1
2
3
ls venv/bin         

activate activate.csh activate.fish Activate.ps1 pip pip3 pip3.8 python python3 python3.8

激活虚拟环境

1
source venv/bin/activate     

激活成功后打印python --version即是你已经激活的虚拟环境,此时你会发现你的命令行提示标题的前面会有(venv)

1
2
(venv) arch-linux ॐ  ~/Desktop/Dailyfresh-B2C/Backend:(13d1h41m|git@master!)
6455 ±

这个就是Linux对Python、Git友好之处!!

安装依赖准备

虚拟环境下

1
pip install --upgrade pip

退出虚拟环境

1
deactivate

pip国内源

参考:

CSDN-SoloLinux:PIP 更换国内安装源

pip国内的一些镜像

命令方式

通过清华源加载所有依赖

1
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ -r requirements.txt

安装依赖时候有 信任源配置,以下命令加信任源域名

1
pip install jsonfield==1.0.3 -i https://mirrors.aliyun.com/pypi/simple --trusted-host=mirrors.aliyun.com

永久方式

Linux

首先如果~/.pip/pip.conf文件目录不存在,创建目录和文件,编辑文件

1
vim ~/.pip/pip.conf

添加以下(也可以加信任源域名)

1
2
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple

如果需要更换新的url

1
pip config set global.index-url new_source_url

验证更换结果

1
pip config get global.index-url

mybe你需要还原默认的官方源

1
pip config unset global.index-url

requirements.txt

一般情况下,涉及到Python项目,项目根目录就会有名为requirements.txt的文件,此文件的作用就是记录本项目需要的依赖和版本。

生成requirements.txt

前提是你的项目已被所有依赖满足

1
pip freeze > requirements.txt

安装依赖从requirements.txt

如果没有配置pip的下载源,执行以下命令会十分缓慢,请看后面的解决方案。

1
pip install -r requirements.txt

问题

不小心安装依赖到真实环境

尝试依旧使用原项目的requirements.txt卸载即可

1
sudo pip uninstall -r requirements.txt -y