百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

pip使用指南

liuian 2025-01-06 14:01 174 浏览

前言

python语言之所以如此受欢迎,能够在众多高级编程语言中脱颖而出,除了简单的语法,更低的学习成本外,更重要的是其完美的生态,我们有数以万计的第三方库可以使用,而不用每次都自己去造轮子。

pip是官方推荐的包管理工具,有了它,python项目开发及维护就如虎添翼。

更改软件源

pip安装软件包时,默认使用pip的官方源,在国内经常会出现因网络而导致的连接失败。解决方法是使用国内的镜像源,如阿里云。编辑pip的配置文件

  • windows操作系统下的位置是%APPDATA%\pip\pip.ini
  • linux操作系统下的位置是~/.pip/pip.conf
  • macOS操作系统下的位置是~/.pip/pip.conf

默认情况下文件夹pip.pip是不存在,需要自己手动创建。配置文件的内容为

[global]
index-url = http://mirrors.aliyun.com/pypi/simple/

[install]
trusted-host=mirrors.aliyun.com

查询相关命令

查询当前环境安装的所有软件包

pip list

pip

查询官方源pypi上含有package名字的软件包

pip search package

pip

查询当前环境中可升级的包

pip list --outdated

由于我们使用了阿里云的镜像源,而阿里云提供的是基于http的,所以会出现如下的警告,执行时,加上--trusted-host mirrors.aliyun.com即可去除警告。或者在pip配置文件中将trusted-host=mirrors.aliyun.com移动到global标签下

The repository located at http://mirrors.aliyun.com is not a trusted or secure host and is being ignored. If this repository is available via HTTPS it is recommended to use HTTPS instead, otherwise you may silence this warning and allow it anyways with '--trusted-host mirrors.aliyun.com'.

pip

查看软件包package的详细信息

pip show package

pip

下载软件包

下载特定版本的软件包,但是这里并不会安装

pip download flask==1.1.1

在下载flask的同时,会将它的所有依赖都下载下来。下载下来的软件包格式不尽相同,有的是whl,有的是tar.gz

pip

pip

下载后的软件,可以通过pip install来安装,而不用连接到软件源在线安装了,对于离线的环境非常有用

pip

安装软件包

安装源上的最新版本

pip install package

pip

安装指定版本

pip install package==1.0.0

pip

在实际项目中,由于依赖的软件包很多,通常都会将依赖写到一个requirements.txt中,使用下面命令

pip install -r requirements.txt

就可以一次性安装好所有的依赖,而requirements.txt一般可以通过下面方式生成

pip freeze > requirements.txt

在多用户环境下,为了不影响他人的环境,可以使用参数--user进行隔离

pip install --user package

安装的软件包存储在~/.local/lib/python3.7/site-packages

pip

升级软件包

想要对已安装的软件包进行升级,其本质上是先卸载本地已安装的旧版本,然后从pypi上下载最新版本的包,再对其进行安装。所以升级也是使用pip install,只不过需要加一个参数--upgrade-U

pip install --upgrade package
# 或者
pip install -U package

pip

卸载软件包 pip uninstall package

pip

pip的升级

跟其他软件包的升级操作一致

pip install -U pip

相关推荐

vue怎么和后端php配合

Vue和后端PHP可以通过HTTP请求进行配合。首先,前端Vue可以使用axios库或者Vue自带的$http对象来发送HTTP请求到后端PHP接口。通过axios库发送POST、GET、PUT等请求...

Ansible最佳实践之 AWX 使用 Ansible 与 API 通信

#头条创作挑战赛#API简单介绍红帽AWX提供了一个类似Swagger的RESTful风格的Web服务框架,可以和awx直接交互。使管理员和开发人员能够在webUI之外控制其...

PHP8.3 错误处理革命:Exception 与 Error 全面升级

亲爱的小伙伴,好久没有发布信息了,最近学习了一下PHP8.3的升级,都有哪些优化和提升,把学到的分享出来给需要的小伙伴充下电。技术段位:高可用性必修目标收益:精准错误定位+异常链路追踪适配场景...

使用 mix/vega + mix/db 进行现代化的原生 PHP 开发

最近几年在javascript、golang生态中游走,发现很多npm、gomod的优点。最近回过头开发MixPHPV3,发现composer其实一直都是一个非常优秀的工具,但是...

15 个非常好用的 JSON 工具

JSON(JavaScriptObjectNotation)是一种流行的数据交换格式,已经成为许多应用程序中常用的标准。无论您是开发Web应用程序,构建API,还是处理数据,使用JSON工具可以大...

php8环境原生实现rpc

大数据分布式架构盛行时代的程序员面试,常常遇到分布式架构,RPC,本文的主角是RPC,英文名为RemoteProcedureCall,翻译过来为“远程过程调用”。主流的平台中都支持各种远程调用技术...

「PHP编程」如何搭建私有Composer包仓库?

在前一篇文章「PHP编程」如何制作自己的Composer包?中,我们已经介绍了如何制作自己的composer包,以及如何使用composer安装自己制作的composer包。不过,这其中有...

WAF-Bypass之SQL注入绕过思路总结

过WAF(针对云WAF)寻找真实IP(源站)绕过如果流量都没有经过WAF,WAF当然无法拦截攻击请求。当前多数云WAF架构,例如百度云加速、阿里云盾等,通过更改DNS解析,把流量引入WAF集群,流量经...

【推荐】一款 IDEA 必备的 JSON 处理工具插件 — Json Assistant

JsonAssistant是基于IntelliJIDEs的JSON工具插件,让JSON处理变得更轻松!主要功能完全支持JSON5JSON窗口(多选项卡)选项卡更名移动至主编辑器用...

技术分享 | 利用PHAR协议进行PHP反序列化攻击

PHAR(“PhpARchive”)是PHP中的打包文件,相当于Java中的JAR文件,在php5.3或者更高的版本中默认开启。PHAR文件缺省状态是只读的,当我们要创建一个Phar文件需要修改...

php进阶到架构之swoole系列教程(一)windows安装swoole

目录概述安装Cygwin安装swoolephp7进阶到架构师相关阅读概述这是关于php进阶到架构之swoole系列学习课程:第一节:windows安装swoole学习目标:在Windows环境将搭建s...

go 和 php 性能如何进行对比?

PHP性能很差吗?每次讲到PHP和其他语言间的性能对比,似乎都会发现这样一个声音:单纯的性能对比没有意义,主要瓶颈首先是数据库,其次是业务代码等等。好像PHP的性能真的不能单独拿出来讨论似的。但其实一...

Linux(CentOS )手动搭建LNMP(Linux+Nginx+Mysql+PHP)坏境

CentOS搭建LNMP(Linux+Nginx+Mysql+PHP)坏境由于网上各种版本新旧不一,而且Linux版本也不尽相同,所以自己写一遍根据官网的提示自己手动搭建过程。看官方文档很重要,永远...

json和jsonp区别

JSON和JSONP虽然只有一个字母的差别,但其实他们根本不是一回事儿:JSON是一种数据交换格式,而JSONP是一种非官方跨域数据交互协议。一个是描述信息的格式,一个是信息传递的约定方法。一、...

web后端正确的返回JSON

在web开发中,前端和后端发生数据交换传输现在最常见的形式就是异步ajax交互,一般返回给js都是json,如何才是正确的返回呢?前端代码想要获取JSON数据代码如下:$.get('/user-inf...