Python打包可執(zhí)行文件的方法詳解
本文實(shí)例講述了Python打包可執(zhí)行文件的方法。分享給大家供大家參考,具體如下:
Python程序需要依賴本機(jī)安裝的Python庫,若想在沒有安裝Python的機(jī)器上運(yùn)行,則需要打包分發(fā),目前有兩個(gè)比較好用的工具:PyInstaller和py2exe。其中py2exe應(yīng)用在windows下,而PyInstall則可應(yīng)用windows、Linux以及Mac OS X上。
這里只貼一段py2exe打包的實(shí)例代碼。(py2exe下載地址 )
#coding=utf-8 from distutils.core import setup import py2exe includes = ["encodings", "encodings.*"] #要包含的其它庫文件 options = {"py2exe": { "compressed": 1, #壓縮 "optimize": 2, "ascii": 1, "includes": includes, "bundle_files": 1 #所有文件打包成一個(gè)exe文件 } } setup ( options = options, zipfile=None, #不生成library.zip文件 console=[{"script": "main.py", "icon_resources": [(1, "Q.ico")] }]#源文件,程序圖標(biāo) )
假如上面的源碼保存為mysetup.py,則打包命令為: python mysetup.py py2exe 。
PS:使用Enigma Virtual Box同樣可以讓Py2exe打包出的單文件更完美。Enigma Virtual Box可點(diǎn)擊此處本站下載:http://www.dbjr.com.cn/softs/425055.html
兩個(gè)用過的實(shí)例:
(1)、后臺運(yùn)行
#coding=utf-8 from distutils.core import setup import py2exe includes = ["encodings", "encodings.*"] #要包含的其它庫文件 options = {"py2exe": { "compressed": 1, #壓縮 "optimize": 2, "ascii": 1, "includes": includes, "bundle_files": 1 #所有文件打包成一個(gè)exe文件 } } setup ( options = options, zipfile=None, #不生成library.zip文件 windows=[{"script": "main.py" }]#源文件 )
(2)、不得不有控制臺窗口,且不能打包為一個(gè)exe文件。(walker是因?yàn)檎{(diào)用了瀏覽器)
#coding=utf-8 from distutils.core import setup import py2exe setup( console = [{'script': "main.py"}], options={ "py2exe":{ "skip_archive": True, "unbuffered": True, "optimize": 2 } } )
PS:關(guān)于使用PyInstalle把Python腳本打包成exe文件,可參考本站文章:http://www.dbjr.com.cn/article/88235.htm
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python文件與目錄操作技巧匯總》、《Python文本文件操作技巧匯總》、《Python URL操作技巧總結(jié)》、《Python圖片操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python Socket編程技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程》
希望本文所述對大家Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
Python基礎(chǔ)知識點(diǎn) 初識Python.md
在本篇文章中我們給大家總結(jié)了關(guān)于Python基礎(chǔ)知識點(diǎn),通過初識Python.md的相關(guān)內(nèi)容分享給Python初學(xué)者,一起來看下吧。2019-05-05python 數(shù)字類型和字符串類型的相互轉(zhuǎn)換實(shí)例
今天小編就為大家分享一篇python 數(shù)字類型和字符串類型的相互轉(zhuǎn)換實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07python圖片指定區(qū)域替換img.paste函數(shù)的使用
這篇文章主要介紹了python圖片指定區(qū)域替換img.paste函數(shù)的使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04Pytorch深度學(xué)習(xí)之實(shí)現(xiàn)病蟲害圖像分類
PyTorch是一個(gè)開源的Python機(jī)器學(xué)習(xí)庫,基于Torch,用于自然語言處理等應(yīng)用程序。它具有強(qiáng)大的GPU加速的張量計(jì)算和自動(dòng)求導(dǎo)系統(tǒng)的深度神經(jīng)網(wǎng)絡(luò)。本文將介紹如何通過PyTorch實(shí)現(xiàn)病蟲害圖像分類,感興趣的可以學(xué)習(xí)一下2021-12-12Python中reduce()函數(shù)的用法詳細(xì)解讀
這篇文章主要介紹了Python中reduce()函數(shù)的用法詳細(xì)解讀,reduce函數(shù)是通過函數(shù)對迭代器對象中的元素進(jìn)行遍歷操作,但需要注意的是?reduce?函數(shù)返回的是計(jì)算的結(jié)果,而?map/filter?返回的是作用后的迭代器對象,需要的朋友可以參考下2023-08-08控制Python浮點(diǎn)數(shù)輸出位數(shù)的操作方法
在python的輸出結(jié)果中,尤其是浮點(diǎn)數(shù)的輸出,當(dāng)我們需要寫入文本文件時(shí),最好是采用統(tǒng)一的輸出格式,這樣也能夠增強(qiáng)結(jié)果的可讀性,這篇文章主要介紹了控制Python浮點(diǎn)數(shù)輸出位數(shù)的方法,需要的朋友可以參考下2022-04-04詳解Python的Twisted框架中reactor事件管理器的用法
這篇文章主要介紹了詳解Python的Twisted框架中reactor事件管理器的用法,Twisted是一款高人氣的異步Python開發(fā)框架,需要的朋友可以參考下2016-05-05pandas中位數(shù)填充空值的實(shí)現(xiàn)示例
中位數(shù)填充是一種簡單而有效的方法,用于填充數(shù)據(jù)集中缺失的值,本文就來介紹一下pandas中位數(shù)填充空值的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2025-04-04