国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python 獲取當前所在目錄的方法詳解

2020-01-04 17:06:25
字體:
來源:轉載
供稿:網友

sys.path

模塊搜索路徑的字符串列表。由環境變量PYTHONPATH初始化得到。

sys.path[0]是調用Python解釋器的當前腳本所在的目錄。

sys.argv

一個傳給Python腳本的指令參數列表。

sys.argv[0]是腳本的名字(由系統決定是否是全名)

假設顯示調用python指令,如 python demo.py ,會得到絕對路徑;

若直接執行腳本,如 ./demo.py ,會得到相對路徑。

os.getcwd()

獲取當前工作路徑。在這里是絕對路徑。
https://docs.python.org/2/library/os.html#os.getcwd

__file__

獲得模塊所在的路徑,可能得到相對路徑。

如果顯示執行Python,會得到絕對路徑。

若按相對路徑來直接執行腳本 ./pyws/path_demo.py ,會得到相對路徑。

為了獲取絕對路徑,可調用 os.path.abspath()

os.path 中的一些方法

os.path.split(path)

將路徑名稱分成頭和尾一對。尾部永遠不會帶有斜杠。如果輸入的路徑以斜杠結尾,那么得到的空的尾部。

如果輸入路徑沒有斜杠,那么頭部位為空。如果輸入路徑為空,那么得到的頭和尾都是空。
https://docs.python.org/2/library/os.path.html#os.path.split

os.path.realpath(path)

返回特定文件名的絕對路徑。

https://docs.python.org/2/library/os.path.html#os.path.realpath

代碼示例

環境 Win7, Python2.7

以 /e/pyws/path_demo.py 為例

#!/usr/bin/env pythonimport osimport sysif __name__ == '__main__':  print "sys.path[0] =", sys.path[0]  print "sys.argv[0] =", sys.argv[0]  print "__file__ =", __file__  print "os.path.abspath(__file__) =", os.path.abspath(__file__)  print "os.path.realpath(__file__) = ", os.path.realpath(__file__)  print "os.path.dirname(os.path.realpath(__file__)) =", os.path.dirname(os.path.realpath(__file__))  print "os.path.split(os.path.realpath(__file__)) =", os.path.split(os.path.realpath(__file__))  print "os.getcwd() =", os.getcwd()

在 /d 中運行,輸出為

$ python /e/pyws/path_demo.pysys.path[0] = E:/pywssys.argv[0] = E:/pyws/path_demo.py__file__ = E:/pyws/path_demo.pyos.path.abspath(__file__) = E:/pyws/path_demo.pyos.path.realpath(__file__) = E:/pyws/path_demo.pyos.path.dirname(os.path.realpath(__file__)) = E:/pywsos.path.split(os.path.realpath(__file__)) = ('E://pyws', 'path_demo.py')os.getcwd() = D:/

在e盤中用命令行直接執行腳本

$ ./pyws/path_demo.pysys.path[0] = E:/pywssys.argv[0] = ./pyws/path_demo.py__file__ = ./pyws/path_demo.pyos.path.abspath(__file__) = E:/pyws/path_demo.pyos.path.realpath(__file__) = E:/pyws/path_demo.pyos.path.dirname(os.path.realpath(__file__)) = E:/pywsos.path.split(os.path.realpath(__file__)) = ('E://pyws', 'path_demo.py')os.getcwd() = E:/

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 旺苍县| 乌恰县| 包头市| 黄大仙区| 双牌县| 诸城市| 深州市| 九龙县| 禹城市| 塘沽区| 苍溪县| 鹤峰县| 布拖县| 霞浦县| 桂林市| 丹棱县| 诸城市| 盐城市| 莲花县| 体育| 湖口县| 札达县| 连云港市| 巩留县| 民勤县| 大同县| 仙桃市| 唐海县| 濮阳市| 青川县| 韶山市| 专栏| 巴中市| 乐山市| 固镇县| 达拉特旗| 正宁县| 连江县| 阿克苏市| 雅江县| 上林县|