Python的包管理工具pip安装
Python的包管理工具pip安装
- 一、安装步骤
- 1.检查 pip是否已安装
- 2.安装 pip
- 方法一:通过 ensurepip 模块安装(推荐)
- 方法二:通过 get-pip.py 脚本安装(经常应为网络域名问题连接不上)
- 3.验证pip安装
- 4.创建别名
- 5.更新pip
- 二、常用的pip命令
- 1.安装包
- 1). 基本安装
- 2). 从本地文件安装
- 2、卸载包
- 3、查看已安装的包
- 1).列出所有已安装包
- 2).查看特定包的详细信息
- 4、升级包
- 5、配置镜像
- 6、生成需求文件和从需求文件安装
- 1).生成需求文件
- 2).从需求文件安装
- 三、python环境迁移安装依赖方法
- 一、使用`pip freeze`命令(适用于基于`pip`管理的包)
pip是 Python 的包管理工具,用于安装和管理 Python 包。通常情况下,pip 会随着 Python 的安装而自动安装。
一、安装步骤
1.检查 pip是否已安装
你可以通过以下命令检查 pip 是否已经安装:
pip --version
如果你看到版本信息,说明 pip 已经安装。如果没有,你可以通过以下方法安装 pip
2.安装 pip
方法一:通过 ensurepip 模块安装(推荐)
Python 3.4 及以上版本自带 ensurepip 模块,可以通过以下命令安装 pip:
python -m ensurepip --default-pip
根据输出信息,setuptools被安装在/usr/local/python3.9/lib/python3.9/site-packages目录下,版本为49.2.1;pip也被安装在/usr/local/python3.9/lib/python3.9/site-packages目录下,版本为20.2.3。
在Python中,site-packages目录是用于存放第三方Python包(如setuptools和pip)的标准位置。当使用python-mensurepip安装pip和相关依赖时,默认会将这些包安装到这个目录下。这样做的好处是方便管理和组织Python的第三方库,并且Python解释器在查找模块和包时也会自动搜索这个目录。
方法二:通过 get-pip.py 脚本安装(经常应为网络域名问题连接不上)
你可以从 Python 官方网站 下载 get-pip.py 脚本并运行它来安装 pip:
1.下载 get-pip.py 脚本:
wget https://bootstrap.pypa.io/get-pip.py
2.运行 get-pip.py 脚本:
python get-pip.py
3.验证pip安装
pip --version
在Linux系统中,命令行执行命令时,系统会在PATH环境变量指定的一系列目录中查找可执行文件。如果pip所在的/usr/local/python3.9/lib/python3.9/site-packages目录(或者更确切地说,包含pip可执行文件的上级目录,通常是/usr/local/python3.9/bin,因为安装时可执行文件会被放置到这个目录下以便在命令行直接调用)没有被包含在PATH环境变量中,就无法直接执行pip命令。
4.创建别名
vim /etc/profile
alias pip='/usr/local/python3.9/bin/pip3'
source /etc/profile
pip --version
5.更新pip
为了确保你使用的是最新版本的 pip,你可以通过以下命令更新 pip:
pip install --upgrade pip
二、常用的pip命令
1.安装包
1). 基本安装
pip install <package_name>l
列如:pip install numpy
pip install <package_name>==<version_number>
例如:pip install requests==2.25.1
例如:
pip install numpy
pip install requests==2.25.1
pip install <package_name>
:这是最基本的安装命令,用于安装指定名称的Python包。例如,要安装numpy
包,可以在命令行中输入pip install numpy
。- 如果要指定版本安装,可以使用
pip install <package_name>==<version_number>
。例如,pip install requests==2.25.1
将安装requests
包的2.25.1版本。
2). 从本地文件安装
- 如果有一个本地的
.whl
(wheel格式)文件或者.tar.gz
(源代码压缩包格式)文件,可以使用以下命令安装。 - 对于
.whl
文件:pip install <path_to_whl_file>
。例如,如果numpy - 1.21.0 - cp39 - cp39 - win_amd64.whl
文件在当前目录下,可以输入pip install numpy - 1.21.0 - cp39 - cp39 - win_amd64.whl
。 - 对于
.tar.gz
文件:pip install <path_to_tar_gz_file>
。
2、卸载包
pip uninstall <package_name>
列如:
pip uninstall matplotlib
pip uninstall <package_name>
:用于卸载指定的Python包。例如,要卸载matplotlib
包,可以输入pip uninstall matplotlib
。在执行卸载命令时,pip
会提示确认是否要卸载。
3、查看已安装的包
1).列出所有已安装包
pip list
pip list
:这个命令会列出当前环境中所有t通过pip安装的Python包及其版本号。例如:
2).查看特定包的详细信息
pip show <package_name>
列如:
pip show flask
pip show <package_name>
:可以查看指定包的详细信息,包括名称、版本、作者、许可证、依赖项等。例如,pip show flask
会显示flask
包的相关信息:
4、升级包
pip install - - upgrade <package_name>
列如:
pip install - - upgrade pandas
pip install - - upgrade <package_name>
:用于升级指定的Python包到最新版本。例如,pip install - - upgrade pandas
会将pandas
包升级到最新版本。
5、配置镜像
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
6、生成需求文件和从需求文件安装
1).生成需求文件
pip freeze > requirements.txt
pip freeze > requirements.txt
:这个命令会将当前环境中所有已安装包及其版本号以特定格式输出到requirements.txt
文件中。这个文件可以用于在其他环境中重现相同的包安装情况。
2).从需求文件安装
pip install - r requirements.txt
后台运行并输出日志
nohup pip install -r requirements.txt > mylog.log &
Windows用
start "" /B pip install -r requirements.txt > mylog.log
pip install - r requirements.txt
:根据requirements.txt
文件中的包列表和版本要求安装所有的包。
三、python环境迁移安装依赖方法
如果在Python环境迁移时不知道需要安装哪些依赖,可以采用以下几种方法来处理:
一、使用pip freeze
命令(适用于基于pip
管理的包)
-
源环境操作
- 在源Python环境(即将要迁移的环境)中,使用
pip freeze
命令。这个命令会列出当前环境中所有安装的Python包及其版本信息。 - 例如,在命令行中执行:
pip freeze > requirements.txt
- 这会将所有包的信息输出到一个名为
requirements.txt
的文件中。这个文件中的每一行代表一个包及其版本,格式通常为package_name==version_number
,例如numpy==1.21.0
。
- 在源Python环境(即将要迁移的环境)中,使用
-
目标环境操作
pip install -r requirements.txt
- 在目标Python环境中,使用
pip install -r requirements.txt
命令。这会根据requirements.txt
文件中的内容安装所有列出的包及其对应的版本。 - 如果目标环境和源环境的Python版本差异较大,可能会遇到一些兼容性问题。在这种情况下,可能需要逐个排查并调整包的版本。
- 在目标Python环境中,使用
-
逐步添加和测试
然后开始运行项目的基本功能,根据运行时的错误提示来安装缺少的依赖。例如,如果运行项目时提示ModuleNotFoundError: No module named ‘requests’,那么就知道需要安装requests包。不断重复这个过程,直到项目能够正常运行。这种方法比较耗时,但对于没有其他可用信息的情况是一种可行的办法。
相关文章:

Python的包管理工具pip安装
Python的包管理工具pip安装 一、安装步骤1.检查 pip是否已安装2.安装 pip方法一:通过 ensurepip 模块安装(推荐)方法二:通过 get-pip.py 脚本安装(经常应为网络域名问题连接不上) 3.验证pip安装4.创建别名5.更新pip 二、常…...
《AIGC 时代程序员的应对之策》
在 AIGC 大语言模型不断涌现、AI 辅助编程工具日益普及的当下,程序员的工作方式确实面临着深刻变革。对于程序员来说,如何应对这一趋势成为了至关重要的问题。 一方面,有人担忧 AI 可能取代部分编程工作。不可否认,随着技术的发展…...

51单片机系列-串口(UART)通信技术
🌈个人主页: 羽晨同学 💫个人格言:“成为自己未来的主人~” 并行通信和串行通信 并行方式 并行方式:数据的各位用多条数据线同时发送或者同时接收 并行通信特点:传送速度快,但因需要多根传输线…...

使用k8s部署java前后端服务
一、项目架构 前端、后端、数据库 1)前端 静态的资源:img css html js文件 js:axios、ajax 2)后端 提供数据:根据web前端发送的请求,从数据库中获取数据 请求都是无状态的,如何保持会话 …...
使用docker创建zabbix服务器
首先保证服务器已正常安装docker,然后执行下面这几个容器创建命令: #创建MySQL容器 docker run --name mysql-server -t --restartunless-stopped -e MYSQL_DATABASE"zabbix" -e MYSQL_USER"zabbix" -e MYSQL_PASSWORD"zabbix_…...
nodejs 016: javascript语法——解构赋值({ a, b, c } = {})=>{console.log(“Hello“);}
在 JavaScript 中,函数参数 { a, b, c } {} 的含义是在函数定义时提供一个默认的对象参数。这个对象包含了三个可选的属性 a, b, 和 c。如果没有传递参数或者传递的参数是一个非对象类型的值,那么函数内部将使用一个空对象 {} 作为参数。 示例 const …...

【人人都能看懂的大模型原理】(一)
前言 当前大模型的学习资源呈现爆发趋势,各种角色的人都用自己的视角参与到大模型的讨论。但是我发现这些学习资源都有几个特点:只摆事实而不讲道理;只讲应用可能而不提实现代价;只讲可能性而缺乏实操经验分享;洞察材…...
JMeter源码解析之JMeter命令行新增命令
JMeter源码解析之JMeter命令行新增命令 需求描述 需要新增一条命令,能够在JMeter命令行中能够展示输入对应的JMeter命令,能够展示对应的命令信息 查看命令效果如下: apache-jmeter-5.1\bin>jmeter --? Copyright © 1999-2024 The …...

YOLOv8 Windows c++推理
#添加一个**yolov8\_。onx **和/或**yolov5\_。Onnx **模型(s)到ultralytics文件夹。 #编辑**main.cpp**来改变**projectBasePath**来匹配你的用户。#请注意,默认情况下,CMake文件将尝试导入CUDA库以与opencv dnn (cuDNN) GPU推理一起使用。 #如果你的Op…...
一文读懂Python中的Popen函数
目录 1. 基本知识2. Demo 1. 基本知识 在Python中,Popen 是 subprocess 模块中的一个函数,它用于创建一个子进程并与其进行通信 subprocess.Popen():Popen 类用于创建和管理子进程 与 os.system() 或 os.popen() 相比,Popen 提供…...

07-阿里云镜像仓库
07-阿里云镜像仓库 注册阿里云 先注册一个阿里云账号:https://www.aliyun.com/ 进入容器镜像服务控制台 工作台》容器》容器服务》容器镜像服务 实例列表》个人实例 仓库管理》镜像仓库》命名空间》创建命名空间 仓库管理》镜像仓库》镜像仓库》创建镜像仓库 使…...
net core mvc 数据绑定 《2》
mvc core 模型绑定 控制绑定名称 》》》Bind 属性可以用来指定 模型应该 绑定的前缀 public class MyController : Controller {[HttpPost]public ActionResult Create([Bind(Prefix "MyModel")] Ilist<MyModel> model){// 模型绑定将尝试从请求的表单数据中…...

文件服务器FastDFS 消息队列中间件RabbitMQ
新标签页 (chinaunix.net) FastDFS - Browse Files at SourceForge.net 一、FastDFS Tracker和Storage: tracker用来管理所有的storage,只是管理服务器,负责负载均衡。 storage是存储服务器,每一个storage服务器都是一个单独的个…...
工作纪实58-Idea打jar包
有时候需要配合算法使用spark定时DP,调用java相关的jar包做数据处理 idea打jar包有以下三种场景 SpringBoot的Maven项目【Maven打包即可】非SpringBoot的Maven项目【添加maven打包参数,使用Maven打包】 借助maven的配置进行打包,新增以下配置…...

ELK-03-skywalking监控linux系统
文章目录 前言一、下载node_exporter二、启动node_exporter三、下载OpenTelemetry Collector四、启动OpenTelemetry Collector4.1 将配置文件下载到同级目录4.2 启动 五、查看总结 前言 skywalking安装完成后,开始我们的第一个监控-监控linux系统。 参考官方文档&a…...

HEITRONICS TC13红外辐射高温计CT13 INFRARED RADIATION PYROMETER CT13
HEITRONICS TC13红外辐射高温计CT13 INFRARED RADIATION PYROMETER CT13...

开源图像降噪算法与项目介绍【持续更新】
Intel Open Image Denoise 介绍:Intel Open Image Denoise(OIDN)是一个开源库,它提供了一系列高性能、高质量的去噪滤镜,专门用于光线追踪渲染的图像。这个库是Intel Rendering Toolkit的一部分,并且是在宽…...
RealSense、ZED 和奥比中光Astra几款主流相机介绍及应用
以下是英特尔 RealSense、Stereolabs ZED 和奥比中光Astra几款相机的详细对比,包括参数、性能以及二次开发等支持,附带代码示例。 详细信息对比和二次开发示例 1. 英特尔 RealSense (例如 D435/D455) 深度技术:立体视觉 红外投影分辨率&a…...

启动 Ntopng 服务前需先启动 redis 服务及 Ntopng 常用参数介绍
启动Ntopng服务之前需要先启动redis服务,因为Ntopng服务依赖于redis服务的键值存储。 服务重启 服务启动 Ntopng常用参数: -d 将 Ntopng 进程放入后台执行。默认情况下,Ntop 在前台运行。 -u 指定启动Ntopng执行的用户,默认为…...

vector的模拟实现以及oj题(2)
前言 上篇博客介绍了大部分vector的接口,其中包括begin()、end()、const begin()、 const end()、size、capacity、reserve、empty、push_back、pop_back、insert、operator[],这篇博客将介绍剩下的部分接口,以及一些oj题解法和思路。 vect…...
Admin.Net中的消息通信SignalR解释
定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...

全球首个30米分辨率湿地数据集(2000—2022)
数据简介 今天我们分享的数据是全球30米分辨率湿地数据集,包含8种湿地亚类,该数据以0.5X0.5的瓦片存储,我们整理了所有属于中国的瓦片名称与其对应省份,方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一)
宇树机器人多姿态起立控制强化学习框架论文解析 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一) 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化…...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战
“🤖手搓TuyaAI语音指令 😍秒变表情包大师,让萌系Otto机器人🔥玩出智能新花样!开整!” 🤖 Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制(TuyaAI…...

【JavaWeb】Docker项目部署
引言 之前学习了Linux操作系统的常见命令,在Linux上安装软件,以及如何在Linux上部署一个单体项目,大多数同学都会有相同的感受,那就是麻烦。 核心体现在三点: 命令太多了,记不住 软件安装包名字复杂&…...
Java编程之桥接模式
定义 桥接模式(Bridge Pattern)属于结构型设计模式,它的核心意图是将抽象部分与实现部分分离,使它们可以独立地变化。这种模式通过组合关系来替代继承关系,从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...
LangFlow技术架构分析
🔧 LangFlow 的可视化技术栈 前端节点编辑器 底层框架:基于 (一个现代化的 React 节点绘图库) 功能: 拖拽式构建 LangGraph 状态机 实时连线定义节点依赖关系 可视化调试循环和分支逻辑 与 LangGraph 的深…...

【Post-process】【VBA】ETABS VBA FrameObj.GetNameList and write to EXCEL
ETABS API实战:导出框架元素数据到Excel 在结构工程师的日常工作中,经常需要从ETABS模型中提取框架元素信息进行后续分析。手动复制粘贴不仅耗时,还容易出错。今天我们来用简单的VBA代码实现自动化导出。 🎯 我们要实现什么? 一键点击,就能将ETABS中所有框架元素的基…...

Android写一个捕获全局异常的工具类
项目开发和实际运行过程中难免会遇到异常发生,系统提供了一个可以捕获全局异常的工具Uncaughtexceptionhandler,它是Thread的子类(就是package java.lang;里线程的Thread)。本文将利用它将设备信息、报错信息以及错误的发生时间都…...

解析“道作为序位生成器”的核心原理
解析“道作为序位生成器”的核心原理 以下完整展开道函数的零点调控机制,重点解析"道作为序位生成器"的核心原理与实现框架: 一、道函数的零点调控机制 1. 道作为序位生成器 道在认知坐标系$(x_{\text{物}}, y_{\text{意}}, z_{\text{文}}…...