一、什么是pip,它和Python有什么关系?
首先,让我们来了解一下pip是什么。
简单的说,pip是帮助我们安装python 的各种第三方库的软件。通过它可以轻松的安装各种第三方的python库。举个例子,如果我们需要做深度学习就可以通过pip 安装 keras、torch、tensorflow等深度学习库,然后直接在代码中引入他们就可以啦
官方一些的说法是,pip是Python的包管理器,它可以帮助我们安装、升级和卸载Python包。Python包是一组Python模块,它们可以提供各种功能,例如数据分析、Web开发、机器学习等等。pip可以让我们轻松地安装这些包,以便我们可以在我们的项目中使用它们。
pip是Python的官方包管理器,它与Python的版本一起发布。这意味着,当你安装Python时,pip也会被安装。pip是一个命令行工具,可以在终端或命令提示符中使用。
二、pip具体用法
现在,让我们来看看pip的具体用法。下面是10个使用pip的技巧,每个都有相关的命令和解释。
1. 安装包
要安装一个包,只需在终端中输入以下命令:
pip install package_name
例如,要安装numpy包,只需输入:
pip install numpy
2. 升级包
要升级一个包,只需在终端中输入以下命令:
pip install --upgrade package_name
例如,要升级numpy包,只需输入:
ypip install --upgrade numpy
3. 卸载包
要卸载一个包,只需在终端中输入以下命令:
pip uninstall package_name
例如,要卸载numpy包,只需输入:
pip uninstall numpy
4. 查看已安装的包
要查看已安装的包,只需在终端中输入以下命令:
pip list
这将列出所有已安装的包及其版本号。
5. 查看包的详细信息
要查看包的详细信息,只需在终端中输入以下命令:
pip show package_name
例如,要查看numpy包的详细信息,只需输入:
pip show numpy
6. 安装特定版本的包
要安装特定版本的包,只需在终端中输入以下命令:
pip install package_name==version_number
例如,要安装numpy包的1.18.5版本,只需输入:
pip install numpy==1.18.5
7. 安装包的依赖项
有时,一个包可能依赖于其他包。要安装一个包及其依赖项,只需在终端中输入以下命令:
pip install package_name[dependencies]
例如,要安装pandas包及其依赖项,只需输入:
pip install pandas[dependencies]
8. 安装本地包
有时,你可能需要安装一个本地的Python包。要安装本地包,只需在终端中输入以下命令:
pip install /path/to/package
例如,如果你的包在/home/user/my_package目录中,只需输入:
pip install /home/user/my_package
9. 导出已安装的包列表
要导出已安装的包列表,只需在终端中输入以下命令:
pip freeze > requirements.txt
这将把所有已安装的包及其版本号写入requirements.txt文件中。
10. 从requirements.txt文件中安装包
要从requirements.txt文件中安装包,只需在终端中输入以下命令:
pip install -r requirements.txt
这将安装requirements.txt文件中列出的所有包及其版本号。
三、pip的其他高阶用法
除了上述技巧之外,pip还有其他一些高阶用法,例如更换源、清理缓存等。下面是一些示例:
1. 更换源
有时,你可能需要更换pip的源,以便更快地下载包。这一点相信国内的小伙伴都有体会。要更换源,只需在终端中输入以下命令:
pip config set global.index-url <清华源的url>
这将把源更改为清华大学的源。你可以将URL替换为其他源的URL。
2. 清理缓存
有时,pip安装包的时候,一定会下载并缓存一些包以便后续使用,这可能会占用磁盘空间。要清理缓存,只需在终端中输入以下命令:
pip cache purge
这将清除pip的缓存。
好了,现在你已经了解了pip的基础知识和一些高级用法。pip是Python开发中不可或缺的工具,它可以帮助我们轻松地安装和管理Python包。希望这篇文章对你有所帮助,如果你有任何问题或建议,请随时在评论区留言。欢迎同学们 关注、转发、收藏!您的支持是我写作最大的动力
四、pip参数手册
pip的参数选项:
-r,--requirement <file>,从给定的需求文件中进行安装。此选项可多次使用。
-c,--constraint <file>,使用给定的约束文件约束版本。此选项可多次使用。约束文件相对于需求文件更加的智能,约束文件与需求文件在一个关键方面不同:将包放入约束文件不会导致安装包,而需求文件将安装列出的所有包。常用来放某个包的依赖项。
--no-deps,不要安装程序包依赖项
--pre,pip查找包括预发布和开发版本。默认情况下,pip只查找稳定版本。
-e,--editable <path/url>,从本地项目路劲或VCS url以可编辑模式(即setuptools开发模式)安装项目。
-t,--target <dir>,将软件包安装到<dir>,默认情况下,这不会替换<dir>下已经存在的文件或文件夹
--platform <platform>,仅使用与<platform>兼容的轮子。默认为运行系统的平台。多次使用此选项可指定目标解释器支持的多个平台
-U,--update,将所有指定的软件包升级到最新的可用版本。依赖项的处理取决于所使用的升级策略。
--upgrade-strategy <upgrade_strategy>,确定应如何处理依赖项升级。两种模式,"eager":无论当前安装的依赖项版本是否满足升级包的要求,都会升级依赖项。"“only-if-needed":仅在不满足升级包的要求时升级
--force-reinstall,重新安装所有软件包,即使它们已经是最新的
-I,--ignore-installed,忽略已安装的软件包,覆盖它们。如果现有软件包的版本不同或安装了不同的软件包管理器,这可能会破坏你的系统。
--compile,将python源文件编译为字节码
--no-compile,不要将python源文件编译为字节码
--no-binary <format_control>,不要使用二进制软件包。<format_control>可以是:all:,禁用所有二进制软件包,:none:清空之前提供的软件包,或者使用指定的软件包,使用逗号分割。请注意,有些软件包很难编译,在使用此选项时可能无法安装。
--only-binary <format_control>,不要使用源程序包