亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何消除 Pyinstaller 中的 Bad magic number 錯誤

如何消除 Pyinstaller 中的 Bad magic number 錯誤

繁花如伊 2023-08-08 15:58:55
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目錄。


查看完整回答
反對 回復 2023-08-08
  • 1 回答
  • 0 關注
  • 195 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號