導入模塊時的理論部分:
如果自定義一個模塊,導入的時候很可能出問題,因為系統自動回去sys.path輸出的這幾個目錄下去找,而自定義的模塊很可能不再這些目錄下,就需要人為的添加進去才能使用,所以就引出了后面幾種方法
下面是在pycharm中的一個例子
在pycharm中可以使用os模塊的__file__來得到當前目錄
import os import sys project_path = os.path.dirname(os.path.dirname(__file__)) sys.path.append(project_path) from core import main if __name__ == '__main__': main.home()
下面是在linux中的使用場景
在linux中__file__有時候不好用,通過os.path.abspath('start.py')的到絕對路徑在處理 /usr/bin/env python import os import sys project_path1 = os.path.dirname(os.path.abspath('start.py')) #在linux中使用__file__后面打印的時候竟然為空,所以只能多寫一步,用abspath得到絕對路徑在經行處理 project_path=os.path.dirname(project_path1) sys.path.append(project_path) print(sys.path) print(project_path) from code import main if __name__ == '__main__': code.main.home()