包的說明
每一個包目錄下面都會有一個__init__.py的文件,這個文件是必須存在的,否則,Python就把這個目錄當成普通目錄(文件夾),而不是一個包。__init__.py可以是空文件,也可以有Python代碼,因為__init__.py本身就是一個模塊,而它的模塊名就是對應包的名字。調用包就是執行包下的__init__.py文件。
問題描述
在一個文件中要引入一個自定義包中的模塊,出現模塊無法導入問題,
此時采取第一種解決方法:
- 先導入sys模塊
- 然后通過sys.path.append(path)函數來導入自定義模塊所在的目錄
- 導入自定義模塊
上面的解決方法會導致以下問題:
可以在本地成功運行,但是打包成exe以后,到別的電腦上無法運行,因為sys.path.append(path)里面的path在別的電腦上不一定存在。
第二種解決方法:
不在代碼里使用sys.path.append(path),保證代碼里不存在本地絕對路徑,把要導入的自定義包拷貝到site-packages目錄下,
然后再打包成exe以后就可以在別的電腦上成功運行。
