app.py我有一個包含和文件的 python 項目source.py。項目還有其他配置和日志文件。我已經轉換app.py為app.exe使用pyinstallerpyinstaller app.py這樣就創建了一個dist目錄。source.py我已將配置和日志文件復制粘貼到dist目錄中。我還想為此創建一個安裝程序,將其安裝在另一臺計算機上。source.py我無法按原樣共享該文件,而不是.py我使用過的source.pyc。我現在已經使用了 inno 編譯器并創建了一個安裝文件。根據我的理解,pyinstaller會自動綁定python解釋器,因此我們不需要在任何其他機器上安裝python。我只是安裝了 exe,它就開始正常工作了。在我的項目中,我有一個調用source.pyc文件的功能,如下所示:exec(os.system("source.pyc install"))這在我的開發機器上運行良好,但在其他機器上,它給了我bad magic error。根據在線論壇,當我們嘗試使用pyc不同的 python 版本解釋器運行文件時,通常會發生這種情況,但在我的情況下,我使用相同的 pyinstaller 解釋器。那怎么會出現這個錯誤呢。除了使用 pyinstaller 編譯 app.py 之外,還有其他方法嗎?我怎樣才能消除這個錯誤。謝謝
1 回答

婷婷同學_
TA貢獻1844條經驗 獲得超8個贊
PyInstaller 不會將 Python 解釋器與 EXE 文件捆綁或綁定。EXE 文件是編譯后的二進制文件,在編譯時不需要解釋器。PYC 文件仍然需要解釋器。
您也可以使用 PyInstaller 編譯其他文件(即source.py
),然后將編譯后的 EXE 文件移動到與app.exe
. 在這種情況下,您將能夠import os; os.system("source.exe")
從主程序運行您的命令。如果您的其他編譯腳本需要未在app.exe
編譯中使用/包含的模塊/庫,則在移動已編譯的 時source.exe
,您還需要將捆綁的庫移動到該app.exe
目錄。
添加回答
舉報
0/150
提交
取消