源碼網(wǎng) 既然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)題。
python用了py2exe打包exe怎么在其他電腦上運(yùn)行?
最新版本的pyinstaler不支持Py3.6。但是官方源代碼已經(jīng)在GitHub中更新:pyinstaler/pyinstaler
下載官方源代碼,將pyinstaler文件夾放到python系統(tǒng)安裝目錄中,如C:usersadministratorappdatalocalprogramsPythonpython36libsite packagespyinstaller
進(jìn)行備份,并用官方源代碼保存上述替換現(xiàn)有文件。
python部署服務(wù)器如何不讓人查看源代碼?
Python是一種解釋性語(yǔ)言,它的缺點(diǎn)是速度和代碼保密性。python標(biāo)準(zhǔn)庫(kù)提供了一個(gè)名為compileall的庫(kù),它可以編譯。將文件復(fù)制到。PyC文件。它比裸代碼好,但是可以反編譯。反編譯的代碼可讀性差。
2. 代碼混亂使可讀性變差。有許多用于代碼模糊處理的工具,例如pyobfuscate。
3. Py2exe可以將Python腳本打包成可以在windows上運(yùn)行的文件。
4. 編譯。穿上。C文件,然后編譯。C文件到。差不多吧。PYD,沒(méi)人能破解它。
5. 只需修改解釋器。這種方法最安全,也更難操作。不僅要掌握基本的加解密算法,還要探索Python代碼的執(zhí)行方式,難度太高。