網站首頁 編程語言 正文
概述:
可以將.py源代碼轉換成無需源代碼的可執行文件(直接就可以運行的程序)
因為有的時候Windows,Mac,Linux系統上并沒有安裝Python的IDLE或者Python的解釋器,我們需要將源程序首先編譯或者打包成一個直接可以執行的程序。
安裝:
PyInstaller庫是第三方庫,使用前需要額外安裝。
打開Windows平臺下的command命令行,輸入pip install pyinstaller
pip install pyinstaller
如下圖所示提示安裝成功:?
使用方式:
找到程序源代碼,在源代碼所在目錄下,通過Windows命令行進行操作(因為Pyinstaller是命令行的執行程序,不是Python下的執行指令)
- windows鍵+R鍵打開cmd命令,想要進入源代碼所在目錄。
- 先進入指定盤,例如在cmd中輸入 D:,進入D盤。
- 然后需要進入指定目錄,語法為:cd 路徑,例如?cd D:\Windows\System32
- 在cmd命令行中,輸入?pyinstaller -F?文件名.py
pyinstaller -F 文件名.py
- 執行完以上代碼后(以上代碼執行需要等待一段時間),打開所在目錄,我們會發現在該文件夾中多了以下圖中三個新文件夾。
- 其中__pycache__,和build文件夾可以刪除。
- 而dist文件夾中生成了一個與源文件同名的exe文件,這個就是打包之后生成的可執行文件。可以鼠標雙擊該文件進入我們的可執行程序。
下圖為可執行文件:
另一方案:
在源代碼所在目錄下,進入cmd命令行的另一種辦法
- 在文件管理器中進入源代碼所在文件夾。
- 在資源管理器的地址欄中輸入cmd,按下回車鍵。則進入了該文件夾中的cmd命令行。
- 在cmd命令行中,輸入 pyinstaller -F?文件名.py
pyinstaller -F 文件名.py
附:常用參數的使用方法如下
(1)-h
pyinstaller 命令的常用參數使用通過在命令行中輸入: >pyinstaller –h即可,截取常用其中一段如下圖所示:
(2)-i 或者--icon ? && -w
例如:--icon參數的使用如下:(指定打包程序使用的圖標文件)
>pyinstaller -F --icon="D:\a.ico" D:\python_test.py
>pyinstaller -F -w -i D:\tmp\main.ico D:\python_test.py
-F 表示生成單個可執行文件,執行后dist目錄中出現了python_test.exe文件,沒有任何依賴庫,執行它即可。
-w 表示去掉控制臺窗口,這在GUI界面時非常有用。不過如果是命令行程序的話那就把這個選項刪除吧!
-i 表示可執行文件的圖標
使用 PyInstaller庫需要注意以下問題:
◆ 文件路徑中不能出現空格和英文句號(.);
◆ 源文件必須是UTF-8編碼,暫不支持其他編碼類型。采用IDLE編寫的源文件都保存為UTF -8編碼形式,可直接使用即可。
總結
原文鏈接:https://blog.csdn.net/weixin_48270094/article/details/123906844
相關推薦
- 2023-12-19 CentOS和Ubuntu中防火墻相關命令
- 2022-02-18 微信小程序----------父組件調用子組件的方法
- 2023-12-19 Mybatis使用注解實現復雜動態SQL
- 2022-05-17 Ubuntu16.04下升級gcc到7.5.0版本(可選gcc任意版本)
- 2023-12-19 Mybatis-plus的快速使用
- 2023-07-06 接口冪等性的通用解決方案golang版
- 2022-09-22 模擬實現vector
- 2022-10-14 TorchServe部署yolov5項目(Docker篇)
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支