獲取當(dāng)前執(zhí)行主腳本方法:sys.argv[0]和_file_
(1)sys.argv
一個(gè)傳給Python腳本的指令參數(shù)列表。sys.argv[0]是腳本的名字。一般得到的是相對路徑,用os.path.abspath(sys.argv[0])得到執(zhí)行文件的絕對路徑:
dirname,filename=os.path.split(os.path.abspath(sys.argv[0]))
os.path.realpath(sys.argv[0])
如果在命令行執(zhí)行sys.argv返回解釋器路徑:[‘/Library/Frameworks/Python.framework/Versions/3.6/bin/ipython3’]
(2)__file__
獲得當(dāng)前執(zhí)行模塊所在的路徑,一般為相對路徑,用os.path.abspath(__file__)得到執(zhí)行文件的絕對路徑:
dirname,filename=os.path.split(os.path.abspath(__file__))
os.path.realpath(__file__)
注意:Python控制臺下,直接使用print__file_是會導(dǎo)致name‘_file_’isnotdefined錯(cuò)誤的,因?yàn)檫@時(shí)沒有在任何一個(gè)腳本下
執(zhí)行,自然沒有_file__的定義了。
以上內(nèi)容為大家介紹了如何獲取當(dāng)前運(yùn)行python文件路徑,希望對大家有所幫助,如果想要了解更多Python相關(guān)知識,請關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。