Python库是否特定于操作系统

时间:2019-04-10 12:36:11

标签: python

为什么某些Python库无法在不同的操作系统上安装。如果我将其与Java进行比较,则python具有wheel和egg(已被丢弃),一旦有了jar,我就可以在任何系统上运行它,而与OS无关,但是在Python的情况下,显然有一些库受到支持在某些特定的操作系统上。 Python也有一个字节代码,但是为什么它是特定于操作系统的(Ubuntu支持Tensorflow,但是当我尝试在cnetos上安装它时出现错误),它不应该像Java那样工作吗,我可以下载二进制文件并简单地执行代码。 另外,当我执行pip安装一些库时,它会编译源代码。我知道Python有多种实现方式(CPython,JPython等)

我已经从各种链接中阅读了有关Python的文章,我发现有用的是http://www.techdarting.com/2014/04/python-compiled-or-interpreted-language.html

1 个答案:

答案 0 :(得分:3)

对于这两种语言,都有两种库:用Python(或Java)编写的库以及与本机代码链接的库(对于Python,native extensions或Java中的JNI) )。本地用户可能有某些环境无法满足的要求。只是您遇到了比Java更多的Python本机库。通常,本机代码用于访问字节码无法使用的非标准硬件(显然是平台相关的)(设计为与平台无关),或者是因为本机代码比字节码快。 Python比Java慢得多是本机库在Python世界中比Java世界中更常见的原因之一。 (例如,一个与平台相关的常见Java代码是Eclipse;原因之一是它使用本机图形库而不是Java。)