django如何加載外部文件


django如何加載外部文件(環境:pycharm python2.7 django1.11)

有一份新的文件夾名為:py_aiplat_demo,內含有多個文件夾(SDK,demo,data)。

1.把文件考到項目的下面,不是app下面。

如果你想使用里面的文件夾SDK此模塊,首先你必須把它變成一個包,即內含有__init__.py文件,如果沒有,就新建一個,其它一樣

2.下面部分分為兩種方法

一.

把py_aiplat_demo整個文件夾提升為藍色文件,pycharm里的項目中,點擊該文件夾,右鍵選擇Mark Directory as 里選擇sources root 

再setting文件里,添加以下句子

sys.path.insert(0, os.path.join(BASE_DIR,'py_aiplat_demo/SDK'))

即可引用文件夾SDK下面的py文件,就可以引入SDK(例:import SDK),如果是下這樣寫

sys.path.insert(0, os.path.join(BASE_DIR,'py_aiplat_demo'))

這個可以引用py_aiplat_demo下所有含有__init__.py文件夾,

二.

一樣,要把py_aiplat_demo整個文件夾提升為藍色文件,pycharm里的項目中,點擊該文件夾,右鍵選擇Mark Directory as 里選擇sources root 

以上面的區別是不再setting中設置,直接到調用的文件中設置,下面是路徑一些說明

print os.path.abspath(__file__)   #當前文件的絕對路徑(含文件名)
print os.path.dirname(os.path.abspath(__file__))   #當前文件的路徑(不含文件名)
print os.pardir      #父級的文件名顯示是 ..
print os.path.abspath(os.pardir)   #獲取當前文件的父級文件名

以下才是正式的調用

file_path=os.path.join(os.path.abspath(os.pardir),"py_aiplat_demo\SDK")
sys.path.insert(0 ,file_path)

import SDK

也可以直接把寫再SDK文件夾__init__.py里面,不需要寫當前文件.py里面,以后如果需要調該sdk模塊,系統會自動初始化

 


免責聲明!

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



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