將python生成的 py檔案轉為 exe檔案的原理是怎樣的?例如py2exe是如何實現的

時間 2021-05-31 14:07:12

1樓:海賊-王路飛

一般而言,有兩種方式,一種是只生成乙個exe,一種是不將依賴檔案打包進exe。

演示一下:

系統環境:win7 64bit

python:python2.7.11 32bit

開啟CMD開始執行:

之後將生成兩個資料夾:

主要用到的是dist中的exe,這裡我用的是第一種:

w9xpopen.exe:w9x代表windows 9x系列程式,popen代表的是pipe open。這個檔案可以不用理它。

看看pysetup.py:

from distutils.core import setup

import py2exe

# 64bit

# "USER32.dll",

# "SHELL32.dll",

# "ntdll.dll",

# "ADVAPI32.dll",

# "msvcrt.dll",

# "WS2_32.dll",

# "GDI32.dll",

# "KERNEL32.dll"

options = {"py2exe൪compressed": 134;optimize": 234;bundle_files":

134;dll_excludes൪USER32.dll൪SHELL32.dll൪ntdll.

dll൪ADVAPI32.dll൪WS2_32.dll൪GDI32.

dll൪KERNEL32.dll൪OLEAUT32.dll൪CRYPT32.

dll൪VERSION.dll൪ole32.dll"setupversion = "1.

0.0"description = "description for your exe"name = "name for your exe"options = optionszipfile = None,

console = [{"script": "getAndReplace.py"

假如不要將依賴檔案打包進exe,又有兩種方式:

依賴包不打成zip包:

保持zipfile = None

同時注釋掉(只有32位的py2exe才有該屬性,所有我用的是32bit python):

"bundle_files": 1

從依賴包中的檔案的修改時間可以看到,這些都是從本地其它地方拷過來的。

依賴包打成zip(注釋掉 zipfile = None):

這時候getAndReplace.exe依賴於library.zip執行。

2樓:nicholas

折騰python:打包.py檔案成.exe可執行檔案方式二:pyinstaller

折騰python:打包.py檔案成.exe可執行檔案方式一:py2exe

看看這兩個,我試過,都可以

但是這種方式打包之後除了exe檔案之外還有一大堆檔案跪求大神有沒有其他打包方式

c 如何將文字0 1轉換為bit0 1寫入檔案並讀取?

靈魂黯滅 為什麼感覺各位的回答都怪怪的。標準庫里不是有乙個bitset類麼,可以自動把字元轉化為對應的二進位制位表示,然後再存入檔案不就好了。 悽臨雨 1.把所有資料載入記憶體 修改完畢 把所有資料寫入檔案 2.記憶體對映載入檔案 在記憶體中修改完畢 將記憶體刷入硬碟 3.實現乙個流或緩衝區,每當業...

python如何匯入opj格式的檔案?

一恆 python 本身可以作為script語言來使用 它的強大的數學庫numpy和scipy幾乎可以替代matlab完成複雜的資料處理 matplotlib 可以實現高質量的資料做圖 pymol 本身就是 python 寫成的,可以實現結構做圖。python的物件導向的特點可以自己定義需要的庫,方...

Python如何獲取呼叫檔案的路徑?

彭雨嫣 a.py from com.company.testForInspect.c import just print if name main just print hey it s a b.py from com.company.testForInspect.c import just pri...