最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python打包exe文件并隱藏執(zhí)行CMD命令窗口問題

 更新時間:2023年01月12日 08:45:45   作者:玖河網(wǎng)絡(luò)  
這篇文章主要介紹了python打包exe文件并隱藏執(zhí)行CMD命令窗口問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

python打包exe文件并隱藏執(zhí)行CMD命令窗口

虛擬環(huán)境安裝 pyinstaller

pip install pyinstaller?

打包exe命令:(具體的命令網(wǎng)上資料很多)

# 打包1個py文件,并隱藏執(zhí)行窗口
pyinstaller -F -w main.py?
?
# 打包1個py文件(-F),并隱藏執(zhí)行窗口(-w),替換exe的ico圖標(biāo)(-i img.ico)
pyinstaller -F -w -i img.ico ?main.py?

以上的這種打包方式會將各種依賴庫都以源文件方式保存到文件夾中,大部分時候我們還是希望只有一個exe文件

將文件夾中所有依賴庫都打包進(jìn)exe內(nèi):

# 合并到一個exe內(nèi)(--onefile),替換exe圖標(biāo)(--icon=img.ico),py源文件(main.py),隱藏執(zhí)行(-w)
pyinstaller --onefile --icon=img.ico ?main.py -w

注意:當(dāng)把所有依賴庫都打包進(jìn)一個exe以后,且以隱藏CMD窗口方式執(zhí)行時會出現(xiàn)錯誤,導(dǎo)致程序無法正常運(yùn)行,所以需要用到

subprocess來執(zhí)行CMD命令。這種方式來執(zhí)行cmd命令就不會出現(xiàn)程序錯誤。

import subprocess
?
cmd = '你的CMD命令'
res = subprocess.call(cmd, shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)?

Python打包exe程序避坑指南:沒有安裝包也能運(yùn)行小程序

首先

在cmd里安裝pyintsaller包。

首先將安裝轉(zhuǎn)換工具—pyinstaller:需要打開cmd,然后在cmd里輸入一行命令即可。

pip install pyinstaller

如果覺得安裝太慢,還可以加入國內(nèi)鏡像下載:【我比較習(xí)慣用豆瓣的】。

pip install -i https://pypi.douban.com/simple/ pyinstaller

常用源鏡像:

1.清華:https://pypi.tuna.tsinghua.edu.cn/simple  
2.阿里云:http://mirrors.aliyun.com/pypi/simple/  
3.中國科技大學(xué) https://pypi.mirrors.ustc.edu.cn/simple/ 
4.華中理工大學(xué):http://pypi.hustunique.com/ 
5.山東理工大學(xué):http://pypi.sdutlinux.org/  
6.豆瓣:http://pypi.douban.com/simple/ 

在cmd里輸入打包成exe的命令。

然后在cmd里跳轉(zhuǎn)地址到Python代碼所在的文件地址,然后輸入以下命令,即可將Python代碼轉(zhuǎn)成

exe,并生成一個名為dist的文件夾,在文件夾中可以找到剛打包完成的exe。

pyinstaller -F xxxx.py(要打包的py文件)
pyinstaller -D xxxx.py(要打包的py文件)

功能注釋:

功能注釋
-F打包成一個文件
-D打包成一個文件夾
-n重新命名
--noconsole去掉cmd命令窗口
-i加入圖標(biāo),圖標(biāo)需要是ico格式

打包舉例:

1.打包時候修改文件名

2.運(yùn)行時候不顯示命令窗口

3.改變游戲圖標(biāo)

pyinstaller -F -i label.ico main.py -n 掃雷小游戲 --noconsole

如果有問題看下面

(1)一閃而過怎么辦?

原因:打包的源碼或環(huán)境有問題。

解決辦法:打包成有命令窗口的exe,并將exe在cmd里運(yùn)行,運(yùn)行不成功會顯示報錯信息,然后根據(jù)報錯信息修改。

(2)打包后的文件太大怎么辦?

原因:在python導(dǎo)包的時候,將包的全部函數(shù)打包成exe了。

解決辦法:這里需要在代碼里更改導(dǎo)包方式,例如將import sys改為from sys import exit。

(3)缺少相關(guān)素材。

將代碼里所有涉及到素材的文件都改成絕對路徑(針對本臺電腦)。

將相關(guān)素材的路徑換成相對路徑,并將所有素材和exe放到一個文件夾下(針對移植exe)。

(4)關(guān)于圖標(biāo)的ico文件去哪里轉(zhuǎn)?

在這個網(wǎng)址可以將圖片轉(zhuǎn)成ico圖標(biāo) http://www.bitbug.net/

(5) 圖標(biāo)加載進(jìn)去不顯示怎么辦?

刷新界面或者將exe文件復(fù)制粘貼到其它路徑下就能看到。

(6)pyintsaller --help。

關(guān)于pyinstaller功能最最最全面的解釋,可以在cmd里直接使用命令得到:

pyinstaller --help

好啦!打包完成之后發(fā)給你想發(fā)的對象吧~無需python也能直接運(yùn)行小程序!趕緊把小程序打包給

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python實現(xiàn)隨機(jī)調(diào)用一個瀏覽器打開網(wǎng)頁

    python實現(xiàn)隨機(jī)調(diào)用一個瀏覽器打開網(wǎng)頁

    下面小編就為大家分享一篇python實現(xiàn)隨機(jī)調(diào)用一個瀏覽器打開網(wǎng)頁,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • 最新評論

    岳西县| 正定县| 池州市| 南溪县| 石林| 涞源县| 长丰县| 独山县| 扎囊县| 平顺县| 大冶市| 金湖县| 东丽区| 临汾市| 桓仁| 沙湾县| 潮安县| 依安县| 彰化市| 牟定县| 长丰县| 眉山市| 兴隆县| 三台县| 天水市| 绥阳县| 漠河县| 鄄城县| 思南县| 宕昌县| 新绛县| 涡阳县| 晋江市| 遂宁市| 新兴县| 马尔康县| 定州市| 上栗县| 吴堡县| 个旧市| 金山区|