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


導入模塊時的理論部分:

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

  

  


免責聲明!

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



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