基本上,我是一位想學習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個不同文件的必要性嗎?
+0
「py」後面的數字適用於不同版本的python。你是否說過只有一種Java版本? –
+0
可移植性在C代碼中被編譯 - 如果你使用像'pip'這樣的包管理器,那麼你可以爲你自己的平臺編譯它 –
+0
如果我爲Java 6編譯我的單個jar,它將在java 6上工作,7,8。還是一個罐子。 –