【笔记】pip学习笔记

前言

pip是一个以Python计算机程序语言写成的软件包管理系统,他可以安装和管理软件包,另外不少的软件包也可以在“Python软件包索引”(英语:Python Package Index,PyPI)中找到。许多Python的发行版中已经预装了pip。(维基百科

初始化项目

  • 创建虚拟环境

Linux & MacOS

1
2
python3 -m venv .venv
source .venv/bin/activate

Windows

1
2
python3 -m venv .venv
.\venv\Scripts\activate.bat

查看帮助

1
pip -h
1
pip --help

添加所有依赖

1
pip install -r requirements.txt

添加指定依赖

-i <url>--index-url <url>:指定软件源
--prefix=<dir>:指定依赖的安装目录,安装在<dir>/lib/目录下
--target=<dir>-t:指定依赖的安装目录,扁平化安装在<dir>/目录下项目级依赖隔离

1
pip install <package_name>

添加或更新指定依赖

1
pip install -U <package_name>

指定版本

<version>:指定版本

1
pip install <package_name>==<version>

删除依赖

1
pip uninstall <package_name>

更新依赖

1
pip install --upgrade <package_name>

查看已安装依赖

1
pip list

查看指定依赖的详细信息

1
pip show <package_name>

下载依赖

  • 只下载依赖而不安装
1
pip download <package_name>

缓存

查看缓存目录

1
pip cache dir

清除缓存

1
pip cache purge

离线安装软件包

无包含依赖

1
pip install <package_name>.whl
1
pip install <package_name>.tar.gz

包含多个依赖

  • 离线安装当前目录下的指定软件包及其所有依赖
1
pip install --no-index --find-links=. <package_name>

软件源

更换软件源

1
pip install <package_name> -i https://pypi.tuna.tsinghua.edu.cn/simple

添加软件源

1
pip install <package_name> --extra-index-url https://download.pytorch.org/whl/

全局依赖安装路径

全局依赖默认安装路径

  • 以Python3.9为例

Windows

  • 通过官网安装包安装的Python:%LocalAppData%\Programs\Python\Python39\Lib\site-packages
  • 通过Winget安装的Python:%LocalAppData%\Programs\Python\Python39\Lib\site-packages
  • 通过Chocolate安装的Python:C:\Python39\Lib

MacOS

  • 通过官网pkg安装包安装的Python:/Library/Frameworks/Python.framework/Versions/3.9/lib
  • XCode默认依赖的Python:/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9
  • CommandLineTools默认依赖的Python:/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9
  • 通过Homebrew安装的Python:/opt/homebrew/lib/python3.9/site-packages
  • 通过Pyenv安装的Python:~/.pyenv/versions/3.9/lib/python3.9/site-packages

完成

参考文献

知乎——刘春雷
CSDN——用余生去守护
Pytorch社区——huydhn
CSDN——MagicMMing
Medium——Chris Dare
腾讯云开发者社区——网络技术联盟站
CSDN——ninnyyan
CSDN——yxlalm