基本上,我是一位想学习Python语言的Java程序员。我想澄清为什么一些python库是使用非便携方式分发的。Python可移植性问题
让我解释一下我的想法。
my-great-lib-1.2.4.jar
我可以用这个LIB(同一个文件),在Windows或Linux的任何版本:如果有人使用Java他准备,可以在不同的平台上使用1(一)JAR文件创建一个规则库。
相反于Java,Python库可能看起来像这样:
bsdiff4-1.1.4.win-amd64-py2.5.exe
bsdiff4-1.1.4.win-amd64-py2.6.exe
bsdiff4-1.1.4.win-amd64-py2.7.exe
bsdiff4-1.1.4.win-amd64-py3.2.exe
bsdiff4-1.1.4.win-amd64-py3.3.exe
bsdiff4-1.1.4.win32-py2.5.exe
bsdiff4-1.1.4.win32-py2.6.exe
bsdiff4-1.1.4.win32-py2.7.exe
bsdiff4-1.1.4.win32-py3.2.exe
bsdiff4-1.1.4.win32-py3.3.exe
查看page完整列表。
对我来说这看起来很奇怪。即使32位和64位平台也需要不同的安装程序。安装程序!为什么我需要安装程序才能使用一个库?而且,概述的安装程序仅适用于Windows。它们中的每一个都绑定到特定的python版本。便携性在哪里?
任何人都可以解释上述10个不同文件的必要性吗?
“py”后面的数字适用于不同版本的python。你是否说过只有一种Java版本? – doctorlove
可移植性在C代码中被编译 - 如果你使用像'pip'这样的包管理器,那么你可以为你自己的平台编译它 – Eric
如果我为Java 6编译我的单个jar,它将在java 6上工作,7,8。还是一个罐子。 – tmporaries