Python生成可執(zhí)行文件之PyInstaller庫(kù)的使用方式
概述:
可以將.py源代碼轉(zhuǎn)換成無(wú)需源代碼的可執(zhí)行文件(直接就可以運(yùn)行的程序)
因?yàn)橛械臅r(shí)候Windows,Mac,Linux系統(tǒng)上并沒(méi)有安裝Python的IDLE或者Python的解釋器,我們需要將源程序首先編譯或者打包成一個(gè)直接可以執(zhí)行的程序。
安裝:
PyInstaller庫(kù)是第三方庫(kù),使用前需要額外安裝。
打開(kāi)Windows平臺(tái)下的command命令行,輸入pip install pyinstaller
pip install pyinstaller
如下圖所示提示安裝成功:
使用方式:
找到程序源代碼,在源代碼所在目錄下,通過(guò)Windows命令行進(jìn)行操作(因?yàn)镻yinstaller是命令行的執(zhí)行程序,不是Python下的執(zhí)行指令)
- windows鍵+R鍵打開(kāi)cmd命令,想要進(jìn)入源代碼所在目錄。
- 先進(jìn)入指定盤(pán),例如在cmd中輸入 D:,進(jìn)入D盤(pán)。
- 然后需要進(jìn)入指定目錄,語(yǔ)法為:cd 路徑,例如 cd D:\Windows\System32
- 在cmd命令行中,輸入 pyinstaller -F 文件名.py
pyinstaller -F 文件名.py
- 執(zhí)行完以上代碼后(以上代碼執(zhí)行需要等待一段時(shí)間),打開(kāi)所在目錄,我們會(huì)發(fā)現(xiàn)在該文件夾中多了以下圖中三個(gè)新文件夾。
- 其中__pycache__,和build文件夾可以刪除。
- 而dist文件夾中生成了一個(gè)與源文件同名的exe文件,這個(gè)就是打包之后生成的可執(zhí)行文件。可以鼠標(biāo)雙擊該文件進(jìn)入我們的可執(zhí)行程序。
下圖為可執(zhí)行文件:
另一方案:
在源代碼所在目錄下,進(jìn)入cmd命令行的另一種辦法
- 在文件管理器中進(jìn)入源代碼所在文件夾。
- 在資源管理器的地址欄中輸入cmd,按下回車(chē)鍵。則進(jìn)入了該文件夾中的cmd命令行。
- 在cmd命令行中,輸入 pyinstaller -F 文件名.py
pyinstaller -F 文件名.py
附:常用參數(shù)的使用方法如下
(1)-h
pyinstaller 命令的常用參數(shù)使用通過(guò)在命令行中輸入: >pyinstaller –h即可,截取常用其中一段如下圖所示:
(2)-i 或者--icon && -w
例如:--icon參數(shù)的使用如下:(指定打包程序使用的圖標(biāo)文件)
>pyinstaller -F --icon="D:\a.ico" D:\python_test.py
>pyinstaller -F -w -i D:\tmp\main.ico D:\python_test.py
-F 表示生成單個(gè)可執(zhí)行文件,執(zhí)行后dist目錄中出現(xiàn)了python_test.exe文件,沒(méi)有任何依賴(lài)庫(kù),執(zhí)行它即可。
-w 表示去掉控制臺(tái)窗口,這在GUI界面時(shí)非常有用。不過(guò)如果是命令行程序的話(huà)那就把這個(gè)選項(xiàng)刪除吧!
-i 表示可執(zhí)行文件的圖標(biāo)
使用 PyInstaller庫(kù)需要注意以下問(wèn)題:
◆ 文件路徑中不能出現(xiàn)空格和英文句號(hào)(.);
◆ 源文件必須是UTF-8編碼,暫不支持其他編碼類(lèi)型。采用IDLE編寫(xiě)的源文件都保存為UTF -8編碼形式,可直接使用即可。
總結(jié)
到此這篇關(guān)于Python生成可執(zhí)行文件之PyInstaller庫(kù)使用的文章就介紹到這了,更多相關(guān)Python生成可執(zhí)行文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python Pygame實(shí)戰(zhàn)之飛機(jī)大戰(zhàn)的實(shí)現(xiàn)
飛機(jī)大戰(zhàn)想必是很多人童年時(shí)期的經(jīng)典游戲,這篇文章主要給大家介紹了關(guān)于如何利用python中的Pygame模塊寫(xiě)一個(gè)簡(jiǎn)單的飛機(jī)大戰(zhàn)小游戲的相關(guān)資料,需要的朋友可以參考下2022-03-03Django在pycharm下修改默認(rèn)啟動(dòng)端口的方法
今天小編就為大家分享一篇Django在pycharm下修改默認(rèn)啟動(dòng)端口的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-07-07Python常問(wèn)的100個(gè)面試問(wèn)題匯總(上篇)
這篇文章主要介紹了Python常問(wèn)的100個(gè)面試問(wèn)題匯總(上篇),文章內(nèi)容詳細(xì),簡(jiǎn)單易懂,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2023-01-01python中小數(shù)點(diǎn)后的位數(shù)問(wèn)題
這篇文章主要介紹了python中小數(shù)點(diǎn)后的位數(shù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03解決Pycharm中恢復(fù)被exclude的項(xiàng)目問(wèn)題(pycharm source root)
今天小編就為大家分享一篇解決Pycharm中恢復(fù)被exclude的項(xiàng)目問(wèn)題(pycharm source root),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-02-02python+OpenCV實(shí)現(xiàn)車(chē)牌號(hào)碼識(shí)別
這篇文章主要介紹了python+OpenCV實(shí)現(xiàn)車(chē)牌號(hào)碼識(shí)別,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-11-11