python包 解压修改后重新打成whl 包

1. 下载 Python 包

复制代码
# 方法1:使用 pip 下载(不安装)
pip download 包名 -d ./downloads

# 方法2:指定版本下载
pip download numpy==1.24.3 -d ./downloads

# 方法3:从 PyPI 直接下载 whl 文件
# 访问 https://pypi.org/project/包名/#files 手动下载

2. 解压 whl 文件

whl 文件本质上是 zip 压缩包,可以直接解压:

复制代码
# 创建解压目录
mkdir package_extracted

# 解压 whl 文件(将文件名替换为你的 whl 文件)
unzip 包名-版本-py3-none-any.whl -d package_extracted/

# 或者使用 Python
python -m zipfile -e 包名-版本-py3-none-any.whl package_extracted/

3. 修改文件内容

进入解压后的目录,找到需要修改的文件进行编辑:

复制代码
cd package_extracted
# 修改你想要的文件...
# 例如修改 __init__.py 或某个模块文件

4. 重新打包成 whl

复制代码
# 方法1:使用 wheel 工具(推荐)
pip install wheel
cd package_extracted
zip -r ../新包名-版本-py3-none-any.whl .

# 方法2:使用 Python 的 zipfile 模块
cd package_extracted
python -m zipfile -c ../新包名-版本-py3-none-any.whl .

# 方法3:使用 build 工具重新构建(如果包包含 setup.py)
pip install build
python -m build --wheel

5. 安装修改后的包

复制代码
# 安装本地 whl 文件
pip install 新包名-版本-py3-none-any.whl

# 或者强制重新安装
pip install --force-reinstall 新包名-版本-py3-none-any.whl
相关推荐
aqiu1111111 小时前
【C++算法打怪专栏】8. 字符串转换整数 (atoi)
开发语言·c++·算法
爱吃香菜的初学者1 小时前
十四.Linux——消息队列
linux·运维·开发语言
迅猛龙办公室1 小时前
python实现倒序输出数字
开发语言·python
夏幻灵7 小时前
JavaScript this 面试:五种绑定规则、优先级与常见面试陷阱
开发语言·javascript·面试
程序猿编码7 小时前
榨干 RTX5090 算力!Qwen3 专用单卡推理引擎,手写C++/CUDA 算子实现 MTP 推测解码
开发语言·c++·大模型推理·qwen3·多模态推理
bkspiderx9 小时前
Qt 插件机制:动态扩展应用功能的核心框架
开发语言·qt·元数据·qt 插件·qpluginloader
程序员老陆9 小时前
深入理解 C++ thread_local:线程私有存储的正确打开方式
开发语言·c++·程序设计
沐晓时光9 小时前
C语言入门,深入理解指针(3)
c语言·开发语言
码云数智-园园10 小时前
unique_ptr 还是 shared_ptr?C++ 智能指针选型与内存泄漏实战分析
java·开发语言
禾小西10 小时前
07丨Redis 哨兵机制:主库故障后,如何恢复服务?
java·开发语言·redis