当前位置: 首页 > article >正文

python包的其他安装方法:whl、.tar.gz

python包的其他安装方法:whl、.tar.gz

文章目录

  • python包的其他安装方法:whl、.tar.gz
    • 源码包与二进制的区别
    • 源码包
    • 二进制包
    • python的whl文件
      • 简介
      • 找对应whl文件
      • 安装whl文件
    • 通过使用压缩包.tar.gz安装python包

源码包与二进制的区别

本部分参考文章:花了两天,终于把 Python 的 setup.py 给整明白了。

Python 包的分发可以分为两种:以源码包的方式发布、以二进制包形式发布。

源码包

源码包安装的过程,是先解压,再编译,最后才安装,所以它是跨平台的,由于每次安装都要进行编译,相对二进包安装方式来说安装速度较慢。

源码包的本质是一个压缩包,其常见的格式有:

格式后缀
zip.zip
gztar.tar.gz
bztar.tar.bz2
ztar.tar.Z
tar.tar

二进制包

二进制包的安装过程省去了编译的过程,直接进行解压安装,所以安装速度较源码包来说更快。

由于不同平台的编译出来的包无法通用,所以在发布时,需事先编译好多个平台的包。

二进制包的常见格式有:

格式后缀
egg.egg
wheel.whl

python的whl文件

简介

WHL文件是以Wheel格式保存的Python安装包,Wheel是Python发行版的标准内置包格式。在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件,这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件解压打开即可查看。

为什么会用到whl文件来安装python库文件呢?在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包,大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。

找对应whl文件

要找到一个包对应的whl文件,可以去镜像源如清华源https://pypi.tuna.tsinghua.edu.cn/simple/ ,一般在链接后面加上库名称就可以找到该库的各种版本,比如numpy文件名中的cp38表示python3.8的版本,下载对应python版本的包。
在这里插入图片描述

当然也可以去GitHub上找whl文件。
在这里插入图片描述

安装whl文件

使用pip install *.whl安装即可 ,其中*.whl就是我们安装的离线包。注意文件要输入完整的路径名,或者先cd 到whl文件的目录下。

或者如果是升级pip install -U *.whl

通过使用压缩包.tar.gz安装python包

比如在GitHub上找到causal-conv1d的.tar.gz压缩包:在这里插入图片描述
可以看到压缩包中有 setup.py 文件:
在这里插入图片描述
解压该文件后,使用cd命令进入该目录,然后使用命令:

python setup.py install

该命令会运行setup.py脚本,并安装Python包到系统中。

如果压缩包中没有setup.py文件,可以根据包的README或者其他安装说明来完成安装,或者使用其他的安装方法。


http://www.kler.cn/a/369092.html

相关文章:

  • 【Kaggle | Pandas】练习1:创造、阅读和写作
  • 【算法刷题指南】双指针
  • 平均误差ME、均方误差MSE、均方根误差RMSE、平均均方根误差ARMSE辨析
  • Linux 重启命令全解析:深入理解与应用指南
  • Python应用指南:利用高德地图API实现路径规划
  • nodejs 基础
  • 2024 年 MathorCup 数学应用挑战赛——大数据竞赛-赛道 A:台风的分类与预测
  • 【Docker大揭秘】
  • 【力扣】[Java版] 刷题笔记-70. 爬楼梯
  • JavaScript 前端开发
  • Python 网络爬虫:基础与实践
  • Java并发学习总结:原子操作类
  • python:如何判断一个数是否为素数
  • Go语言初识
  • 基于Python和OpenCV的疲劳检测系统设计与实现
  • 解决vue使用pdfdist-mergeofd插件时报错polyfills
  • VMware各版本下载的镜像站(含windows和linux)
  • ptp4l协议_配置文件
  • 【JIT/极态云】技术文档--函数设计
  • java :String 类
  • ReactOS系统中平衡二叉树,在一个空间中寻找与给定地址范围重合或部分重合的(已分配)区间
  • Python 实现日期计算与日历格式化输出(万年历)
  • Qt 窗口可见性 之 close函数和hide函数
  • [Go实战]:HTTP请求转发
  • 电商平台店铺运营:巧用 API 接口的策略之道
  • jemalloc替换标准库 malloc等函数的三种方式