os.path.dirname( __ file __ ) 2018/6/2
os.path.dirname( __ file __ ) 2018/6/2
該測試腳本所在的位置:D:\第1層\第2層\第3層\第4層\第5層\test11.py
import os #該文件所在位置:D:\第1層\第2層\第3層\第4層\第5層\test11.pypath1 = os.path.dirname(__file__) print(path1)#獲取當(dāng)前運(yùn)行腳本的絕對路徑path2 = os.path.dirname(os.path.dirname(__file__)) # print(path2)#獲取當(dāng)前運(yùn)行腳本的絕對路徑(去掉最后一個路徑)path3 = os.path.dirname(os.path.dirname(os.path.dirname(__file__))) print(path3)#獲取當(dāng)前運(yùn)行腳本的絕對路徑(去掉最后2個路徑)path4 = os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(__file__)))) print(path4)#獲取當(dāng)前運(yùn)行腳本的絕對路徑(去掉最后3個路徑)path5 = os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(__file__))))) print(path5)#獲取當(dāng)前運(yùn)行腳本的絕對路徑(去掉最后4個路徑)path6 = os.__file__ #獲取os所在的目錄 print(path6)運(yùn)行的結(jié)果:
C:\Python352\python.exe D:/第1層/第2層/第3層/第4層/第5層/test11.py D:/第1層/第2層/第3層/第4層/第5層 D:/第1層/第2層/第3層/第4層 D:/第1層/第2層/第3層 D:/第1層/第2層 D:/第1層 C:\Python352\lib\os.pyProcess finished with exit code 0- 解釋:
- os.path.dirname( __ file__ )返回腳本的路徑,但是需要注意一下幾點(diǎn):
1、必須是實(shí)際存在的.py文件,如果在命令行執(zhí)行,則會引發(fā)異常NameError: name '__ file__' is not defined
2、在運(yùn)行的時候如果輸入完整的執(zhí)行的路徑,則返回.py文件的全路徑如:
python c:/test/test.py 則返回路徑 c:/test ,如果是python test.py 則返回空
3、結(jié)合os.path.abspath用,效果會好,如果大家看過一些python架構(gòu)的代碼的話,會發(fā)現(xiàn)經(jīng)常有這樣的組合
os.path.dirname(os.path.abspath(__ file__ )), 其中os.path.abspath(__ file__)返回的是.py文件的絕對路徑
這就是os.path.dirname(__ file__)的用法,其主要總結(jié)起來有:
1、不要已命令行的形式來進(jìn)行os.path.dirname( file)這種形式來使用這個函數(shù)
2、結(jié)合os.path.abspath()使用
轉(zhuǎn)載于:https://www.cnblogs.com/GGGGGGZX/p/9124183.html
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的os.path.dirname( __ file __ ) 2018/6/2的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android 开发 时间选择器Time
- 下一篇: user-agent