將py編譯成exe文件 既然Python是用C實(shí)現(xiàn)的,那為什么Python不能直接生成exe呢?
既然Python是用C實(shí)現(xiàn)的,那為什么Python不能直接生成exe呢?C語(yǔ)言實(shí)際上是一種“舊”和“底層”語(yǔ)言。其執(zhí)行效率僅次于匯編語(yǔ)言。它之所以古老是因?yàn)镃語(yǔ)言出現(xiàn)得很早。盡管FORTRAN和COB
既然Python是用C實(shí)現(xiàn)的,那為什么Python不能直接生成exe呢?
C語(yǔ)言實(shí)際上是一種“舊”和“底層”語(yǔ)言。其執(zhí)行效率僅次于匯編語(yǔ)言。
它之所以古老是因?yàn)镃語(yǔ)言出現(xiàn)得很早。
盡管FORTRAN和COBOL比C語(yǔ)言出現(xiàn)得早,但現(xiàn)代主流操作系統(tǒng)(windows、Mac OS、Linux、IOS、Android、Unix)都是從C語(yǔ)言中誕生的。
最根本的原因是C語(yǔ)言被設(shè)計(jì)用來(lái)同時(shí)編寫(xiě)匯編語(yǔ)言。從理論上講,它可以用外匯來(lái)表示。匯編語(yǔ)言是最有效的語(yǔ)言。
所以Python是用C語(yǔ)言編寫(xiě)的也就不足為奇了。它與能否生成exe無(wú)關(guān)。
Exe文件是Windows平臺(tái)的專(zhuān)用格式。最簡(jiǎn)單的exe是com可執(zhí)行文件。EXE文件實(shí)際上由引導(dǎo)加載程序和解釋器組成。
由Python語(yǔ)言生成的代碼只能通過(guò)引導(dǎo)加載程序和解釋器作為EXE文件執(zhí)行。
因此Python生成EXE文件并不困難。只是它是否愿意提供的問(wèn)題。
如何使用PyInstaller將Python代碼轉(zhuǎn)換成exe文件?
提前編寫(xiě)需要轉(zhuǎn)換的python腳本,在CMD中輸入命令格式為:pyinstaller[parameter][script path],其中包括:-F、-onefile py code,一個(gè)目錄中只有一個(gè)文件-D、-onedir py code(默認(rèn)為)-K、-TK包括TCL/TK-D、-debug generate debug mode EXE file-W,-windowed、-noconsole Form EXE file(僅限windows)-C、-nowindored、-console EXE file(僅限windows)-x、-upx使用upx壓縮EXE文件-O dir、-out=dir設(shè)置spec文件輸出的目錄。默認(rèn)情況下,與pyinstaller相同的目錄,-V file,-version=file被添加到版本信息文件中