首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python轮询包Linux与windows

Python轮询包Linux与windows
EN

Stack Overflow用户
提问于 2018-05-10 20:44:50
回答 2查看 2.5K关注 0票数 4

对于Linux、windows等,人们可以使用相同的python包(轮转文件)吗?我之所以问这个问题,是因为有些包不仅包括python文件,而且还包括EXEs,我认为它是python代码变成了exe (至少使用了pip.exe和Django管理工具)。Exe文件是特定于平台的,就像windows和Linux有单独的python解释器一样,因此出现了一个问题。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-05-10 20:53:28

有些车轮包是跨平台的,有些是平台特有的.

这个信息包含在车轮的名字中。对于示例

代码语言:javascript
复制
pytz-2018.4-py2.py3-none-any.whl (510kB)

这个py2.py3意味着它可以在任何Python2.x和3.x实现中工作,而none-any意味着它可以在任何平台上工作。这一个更具体:

代码语言:javascript
复制
numpy-1.14.3-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl

这个cp36-cp36m意味着它只在CPython 3.6中工作,而macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64意味着它是为x86_64 macOS 10.9-10.10版本构建的。(粗略地说,这是macOS的最低版本和推荐版本;大多数其他平台并不是那么复杂。)

包之所以特定于平台,最常见的原因是它包含了case扩展模块,就像numpy一样。但可能还有其他原因。例如,它可能包括subprocess的本机可执行文件,或者使用ctypes访问系统API等等。

票数 6
EN

Stack Overflow用户

发布于 2018-05-10 20:53:18

Python是一种打包格式,而不是执行格式。它基本上是一个.zip文件。

此外:

https://packaging.python.org/discussions/wheel-vs-egg/ ...when发行版只包含Python (即没有编译的扩展名),并且与Python2和3兼容,轮毂可能是“通用的”,类似于sdist。

来自同一链接:

单轮存档可以表明它与许多Python语言版本和实现、ABI和系统架构的兼容性。

换句话说,“轮子”格式被设计成尽可能便携.它还允许您根据需要包括特定于平台的内容。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50281252

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档