%pip和!pip的区别

在 Jupyter Notebook 中,!pip install -r requirements.txt 和 %pip install -r requirements.txt 都是有效的命令,但它们之间有一些区别:

!pip install -r requirements.txt

  • 作用 :使用 ! 前缀可以在 Notebook 中执行 shell 命令,这样 Jupyter 会将其作为普通的命令行指令执行。这个命令会在当前的 Notebook 环境中运行,并尝试使用 pip 安装 requirements.txt 文件中列出的所有依赖包。
  • 特点 :使用这种方式时,pip 的输出不会特别整合到 Notebook 的输出中,可能会显示为普通的命令行输出。

%pip install -r requirements.txt

  • 作用 :使用 % 前缀是一个魔法命令(magic command),特定于 IPython/Jupyter 环境。这个命令同样会执行 pip 安装操作,但它更好地集成在 Notebook 中,输出和错误处理可能更为友好。
  • 特点 :使用 %pip 运行时,Notebook 会对环境进行更好的管理,包括安装库时确保在当前的 Python 环境中安装,而不是其他可能存在的环境。

选择哪个?

  • 推荐使用 %pip :在 Jupyter Notebook 中,推荐使用 %pip 而不是 !pip,因为它可以更好地与 Notebook 环境协同工作,确保在正确的环境中安装依赖。

示例

python 复制代码
# 使用 !pip
!pip install -r requirements.txt

# 使用 %pip
%pip install -r requirements.txt

参考链接

导入包

复制代码
# 安装git包
!git clone https://github.com/aimacode/aima-python.git
!git submodule init
!git submodule update
%cd aima-python
%pip install -r requirements.txt
# 引入本地包
import sys
sys.path.append(r'D:\Aberdeen\AI\week2\CS502K\aima-python-master')
相关推荐
BK贝壳8 分钟前
bool-hybrid-array 落盘我只认 .bha:用 Create_BHA / Ask_BHA 做布尔数组序列化
数据结构·python·numpy·1024程序员节
by2099911 分钟前
Linux 基础指令与文件操作
linux·1024程序员节
Sakura_j_h_35 分钟前
Python 在定时任务里输出 emoji,UnicodeEncodeError 从哪来
开发语言·字符编码·windows·python·定时任务
Escalating_xu1 小时前
【Linux 网络编程】手写序列化与反序列化:从 x op y 到能校验的文本协议
linux·运维·网络
supabc1232 小时前
欧盟电子发票(XRechnung/Peppol/ZUGFeRD)踩坑记:用 Python 不装 Java 跑官方校验规则
xml·python·开源·电子发票·1024程序员节
ZhengEnCi2 小时前
AI Agent工具调用防护层怎么写-一份能直接跑的Python四层拦截实现
python·llm·agent
todoitbo2 小时前
在 Ubuntu ARM64 上运行 Q1 V3.0 MuJoCo 模型:加载、步进和单执行器响应
linux·运维·ubuntu·ai·机器人·仿真教程·启元
ZhengEnCi3 小时前
AI Agent工具误调用怎么解决-从参数校验到高危二次确认的四层工程防线
python·llm·agent
AR-26710-3 小时前
Linux Day26——传输层与三次握手
linux·运维
隔窗听雨眠4 小时前
PostgreSQL单表从Windows迁移到Linux:差异剖析、方案对比与全流程实战
linux·windows·postgresql