Python 自定義包的導入問題 和 打包成exe無法在別的電腦運行的問題


包的說明

每一個包目錄下面都會有一個__init__.py的文件,這個文件是必須存在的,否則,Python就把這個目錄當成普通目錄(文件夾),而不是一個包。__init__.py可以是空文件,也可以有Python代碼,因為__init__.py本身就是一個模塊,而它的模塊名就是對應包的名字。調用包就是執行包下的__init__.py文件。

問題描述

在一個文件中要引入一個自定義包中的模塊,出現模塊無法導入問題,

此時采取第一種解決方法:

  1. 先導入sys模塊
  2. 然后通過sys.path.append(path)函數來導入自定義模塊所在的目錄
  3. 導入自定義模塊

上面的解決方法會導致以下問題:

可以在本地成功運行,但是打包成exe以后,到別的電腦上無法運行,因為sys.path.append(path)里面的path在別的電腦上不一定存在。

第二種解決方法:

不在代碼里使用sys.path.append(path),保證代碼里不存在本地絕對路徑,把要導入的自定義包拷貝到site-packages目錄下,

然后再打包成exe以后就可以在別的電腦上成功運行。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM