欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python編程-將Python程序轉(zhuǎn)化為可執(zhí)行程序[整理]

 更新時(shí)間:2007年04月09日 00:00:00   作者:  
工欲善其事,必先利其器.python是解釋型的語言,但是在windows下如果要執(zhí)行程序的話還得加個(gè)python shell的話,未免也太麻煩了.而這里所說的東西就是將python程序轉(zhuǎn)換為exe文件.下面是一些常用的工具,不過似乎py2exe應(yīng)用的更加廣泛一些. 
py2exe     http://py2exe.sf.net
只支持windows平臺(tái),應(yīng)該是大家聽到最多的一個(gè)名字了,用戶不少,所以有問題的話在它的mail list里面很容易找到答案。文檔中提到了"無法找到某某code"、使用opengl等模塊的問題 
 

PyPackage    http://codereactor.net/projects/pypack/index.html
我覺得py2exe等等工具還是羅嗦得像唐僧,需要在配置文件中寫上需要的數(shù)據(jù)文件。作者完全無視這樣一個(gè)事實(shí):我需要發(fā)布可執(zhí)行文件的時(shí)候,程序已經(jīng)完工了,所有的數(shù)據(jù)文件就在主程序所在目錄下,所以多數(shù)情況下,根本不用到別的地方搜索。現(xiàn)在終于有人站了出來,PyPackage實(shí)際上并不是一個(gè)程序打包的工具,而只是簡化py2exe的操作,甚至可以自動(dòng)調(diào)用InnoSetup 5制作安裝文件——不過這個(gè)軟件并不智能,會(huì)打包很多不需要的文件 
 

Installer     http://www.mcmillan-inc.com/installer_dnld.html
可以產(chǎn)生windows、linux平臺(tái)的可執(zhí)行文件,現(xiàn)在作者主頁連不上去了,但是搜索一下可以在其它地方下載
自帶一個(gè)小程序?qū)懪渲梦募?,如果程序較復(fù)雜,還是需要手工修改這個(gè)配置文件。支持從py15以來的所有Python版本
2005年9月,冰凍牡蠣更新:Giovanni Bajo獲得Gordon McMillan's Installer的授權(quán)、版權(quán)改變?yōu)镚PL,并在http://pyinstaller.hpcf.upr.edu/繼續(xù)開發(fā)PYinstaller。2006年9月更新:這里可以看到Gordon McMillan's的原始網(wǎng)站的鏡像 
 

Python自帶的freeze.py(不過windows版本不帶這個(gè),你可以自己下載Python的源程序再找)。這個(gè)是我最不推薦的一種方法(為什么?自己看),不過如果你的Python程序要發(fā)布到其它工具不支持的平臺(tái)上,可以考慮這個(gè)方法 
 

新出來的Pyco    http://www.pythonapocrypha.com/projects/pyco/
還沒用過 
 

Squeeze    http://starship.python.net/crew/fredrik/ipa/squeeze.htm
還沒用過,只支持Python 1.4 
 

cx_Freeze  http://starship.python.net/crew/atuining/cx_Freeze/
winodws、linux平臺(tái)。簡單的程序甚至都不需要寫配置文件 
 

Stand alone Python for Windows http://arctrix.com/nas/python/standalone.html
如果你不介意源程序太過"暴露"的話,用這個(gè)吧
會(huì)不會(huì)覺得Updated: Sun, 09 Apr 2000 18:39:54 -0600 扎眼?如果你看一看它的VC源代碼,就不會(huì)這么想了——其實(shí)這是普遍適用于win系統(tǒng)的方法,無論是98、2000或者xp。也許也可以用到linux上——我不懂linux,如果真的可以這么做,還請(qǐng)告訴我。 
 

py2app    http://undefined.org/python/
支持linux平臺(tái)的工具可能也支持mac os,或者直接使用這個(gè)py2app。具體就不知道了,只吃過蘋果,還沒玩過蘋果呢 
 

Movable Python  http://www.voidspace.org.uk/python/movpy/
這個(gè)其實(shí)是使用py2exe制作的、可以放在U盤上的綠色Python。有使用py2app制作蘋果版movpy和用cx_Freeze制作Linux版movpy的計(jì)劃。懶到都不愿意學(xué)習(xí)py2exe、py2app或者cx_Freeze的人可以看看。 
 

Shed Skin - A Python-to-C++ Compiler: 試驗(yàn)項(xiàng)目,windows上,連他的例子我都沒有編譯成功 :(。 
 

Psyco: 給Python程序加速的東西,看不出對(duì)發(fā)布Python程序的直接好處,并且作者以后將致力于PyPy。 
 

PyPy: 項(xiàng)目目標(biāo)是純Python實(shí)現(xiàn)的Python、速度比CPython快,將來可以幫助實(shí)現(xiàn)編譯Python。 
 

pyc: Python compiler in Python,一個(gè)用純Python寫的Python的bytecode編譯器,可以優(yōu)化輸出的pyc文件。和PyPy一樣,現(xiàn)在還看不出對(duì)發(fā)布Python程序的直接好處。只有py24的bytecode。pyc是pyvm這個(gè)新的python虛擬機(jī)的一部分。 
 

Jungle: 使用GNU工具(as、ld和winres)把Python程序編譯到windows的exe可執(zhí)行文件。該可執(zhí)行文件只使用基于python24的的pythonic.dll。猜測它支持的模塊僅限于內(nèi)部模塊以及jungle.jgl列出的模塊。只有可執(zhí)行文件下載,而這個(gè)可執(zhí)行文件也是用Jungle自己編譯的。目前版本號(hào)都到1.10了,經(jīng)???.xx的版本號(hào),這個(gè)數(shù)字好大啊,娃哈哈。 
 

另類的方法,對(duì)Python語言特性都還不是100%支持,眾多的CPython模塊也不可以使用,還有,我也沒有試過:


for .NET的Python編譯器(如Visual Python、IronPython),不過我可不喜歡為了一個(gè)芝麻大的軟件安裝.NET framework

用jython,然后用jbuilder、jsmooth、NativeJ之類的包裹一下,或者用gcj編譯成本地代碼 
在最后,給一個(gè)人學(xué)習(xí)py2exe的文章,幫助學(xué)習(xí):

最近學(xué)了一點(diǎn)PYTHON,想把PYTHON寫的程序轉(zhuǎn)換成EXE文件,在網(wǎng)上查到了資料后發(fā)現(xiàn)了這個(gè)東東
寫下來做一下記錄。

英文教程:
http://www.py2exe.org/index.cgi/Tutorial


Python 2.5 + Py2exe 

工作目錄:c:\python25


首先隨便寫一個(gè)程序
hello.py

print "Hello World!"


測試一下是否能運(yùn)行
python hello.py
結(jié)果:Hello World

到www.py2exe.org下載 PY2exe ,或者在SF上下載
http://sourceforge.net/project/showfiles.php?group_id=15583

接下來直接安裝PY2EXE包。。它是一個(gè)安裝文件。。直接裝就行了。

下在編寫一個(gè)設(shè)置的PY文件 setup.py

from distutils.core import setup
import py2exe
setup(console=['hello.py'])


運(yùn)行:python setup.py py2exe  
出現(xiàn)以下信息后,在DIST目錄里,就會(huì)有一個(gè)hello.exe
即成功。

running py2exe
*** searching for required modules ***
*** parsing results ***
creating python loader for extension 'zlib'
creating python loader for extension 'unicodedata'
creating python loader for extension 'bz2'
*** finding dlls needed ***
*** create binaries ***
*** byte compile python files ***
byte-compiling C:\Tutorial\build\bdist.win32\winexe\temp\bz2.py to bz2.pyc
byte-compiling C:\Tutorial\build\bdist.win32\winexe\temp\unicodedata.py to unicodedata.pyc
byte-compiling C:\Tutorial\build\bdist.win32\winexe\temp\zlib.py to zlib.pyc
skipping byte-compilation of c:\Python24\lib\StringIO.py to StringIO.pyc

[skipping many lines for brevity]

skipping byte-compilation of c:\Python24\lib\warnings.py to warnings.pyc
*** copy extensions ***
*** copy dlls ***
copying c:\Python24\lib\site-packages\py2exe\run.exe -> C:\Tutorial\dist\hello.exe

*** binary dependencies ***
Your executable(s) also depend on these dlls which are not included,
you may or may not need to distribute them.

Make sure you have the license if you distribute any of them, and
make sure you don't distribute files belonging to the operating system.

   ADVAPI32.dll - C:\WINDOWS\system32\ADVAPI32.dll
   USER32.dll - C:\WINDOWS\system32\USER32.dll
   SHELL32.dll - C:\WINDOWS\system32\SHELL32.dll
   KERNEL32.dll - C:\WINDOWS\system32\KERNEL32.dll

相關(guān)文章

  • GDAL 矢量屬性數(shù)據(jù)修改方式(python)

    GDAL 矢量屬性數(shù)據(jù)修改方式(python)

    這篇文章主要介紹了GDAL 矢量屬性數(shù)據(jù)修改方式(python),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • Django REST framework 視圖和路由詳解

    Django REST framework 視圖和路由詳解

    這篇文章主要介紹了Django REST framework 視圖和路由詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • linux系統(tǒng)使用python監(jiān)控apache服務(wù)器進(jìn)程腳本分享

    linux系統(tǒng)使用python監(jiān)控apache服務(wù)器進(jìn)程腳本分享

    這篇文章主要介紹了linux系統(tǒng)使用python監(jiān)控apache服務(wù)器進(jìn)程的腳本,大家參考使用吧
    2014-01-01
  • python刪除列表內(nèi)容

    python刪除列表內(nèi)容

    這里給大家通過2個(gè)例子,分析了下如何使用python刪除列表內(nèi)容,也給出了思路,分別通過pop和remove方法來實(shí)現(xiàn),有相關(guān)需求的小伙伴可以參考下。
    2015-08-08
  • Python的flask常用函數(shù)route()

    Python的flask常用函數(shù)route()

    這篇文章主要介紹了Python的flask常用函數(shù)route(),文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-07-07
  • Python的pdfplumber庫將pdf轉(zhuǎn)為圖片的實(shí)現(xiàn)

    Python的pdfplumber庫將pdf轉(zhuǎn)為圖片的實(shí)現(xiàn)

    本文主要介紹了Python的pdfplumber庫將pdf轉(zhuǎn)為圖片的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • python+mysql實(shí)現(xiàn)個(gè)人論文管理系統(tǒng)

    python+mysql實(shí)現(xiàn)個(gè)人論文管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了python+mysql實(shí)現(xiàn)個(gè)人論文管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • Python 切片索引越界的問題(數(shù)組下標(biāo)越界)

    Python 切片索引越界的問題(數(shù)組下標(biāo)越界)

    Python語言處理字符串、數(shù)組類的問題時(shí)有一定概率需要使用切片方法,本文主要介紹了Python 切片索引越界的問題,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • 淺談Python的正則表達(dá)式

    淺談Python的正則表達(dá)式

    這篇文章主要介紹了淺談Python的正則表達(dá)式,正則表達(dá)式本身是獨(dú)立于編程語言的知識(shí),但是它又依附于編程語言,需要的朋友可以參考下
    2023-04-04
  • python驗(yàn)證碼識(shí)別教程之利用滴水算法分割圖片

    python驗(yàn)證碼識(shí)別教程之利用滴水算法分割圖片

    這篇文章主要給大家介紹了關(guān)于python驗(yàn)證碼識(shí)別教程之利用滴水算法分割圖片的相關(guān)資料,文章中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-06-06

最新評(píng)論