1. 程式人生 > >python導入模塊時對路徑的處理

python導入模塊時對路徑的處理

import char project code rom bin int pyc har

導入模塊時的理論部分:

如果自定義一個模塊,導入的時候很可能出問題,因為系統自動回去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()

  

  

python導入模塊時對路徑的處理