python目錄操作之os.path模組詳解
阿新 • • 發佈:2018-12-10
os.path模組
注意:匯入os模組或os.path模組都可以使用下面介紹的方法
os.path.exists(path):判斷指定目錄是否存在
>>> import os.path
>>> if os.path.exists("D:\\test"):
... print ("do something")
...
os.path.isabs(path):判斷路徑是否為絕對路徑,不會判斷目錄是否真實存在
>>> os.path.isabs("test") False >>> os.path.isabs("c:\\test") True
os.path.isfile(path):判斷指定目錄是否為檔案
>>> import os.path
>>> if os.path.isfile("D:\\1.txt"):
... print ("True")
...
True
os.path.isdir(path):判斷指定路徑是否為目錄
>>> if os.path.isdir("D:\\1.txt"):
... print ("True")
... else:
... print ("False")
...
False
os.path.join() 拼接路徑
>>> os.path.join("c:\\","a.txt")
'c:\\a.txt'
>>> os.path.join("c:\\test","c:\\a.txt") #如果都是絕對路徑就輸出後者
'c:\\a.txt'
>>> os.path.join(r"e:\test",r"e:\a.txt")
'e:\\a.txt'
os.path.abspath():把一個相對路徑變成絕對路徑,不保證檔案是否存在
>>> import os >>> print (os.path.abspath("gang.txt")) C:\Users\zhigang\Desktop\gang.txt
os.path.split(path):分割路徑名與檔名,以元組的形式返回
>>> os.path.split(r"C:\Users\zhigang\Desktop\gang.txt")
('C:\\Users\\zhigang\\Desktop', 'gang.txt')
>>> os.path.split(r"C:\Users\zhigang\Desktop\gang.txt")[1]
'gang.txt'
os.path.dirname(path):返回path的目錄路徑,其實就是os.path.split(path)的第一個元素
>>> os.path.dirname(r"C:\Users\zhigang\Desktop\gang.txt")
'C:\\Users\\zhigang\\Desktop'
os.path.basename(path):返回path最後的檔名。如果path以/或\結尾,就會返回空值。即os.path.split(path)的第二個元素
>>> os.path.basename(r"C:\Users\zhigang\Desktop\gang.txt")
'gang.txt'
os.path.normpath(path) 將path轉換成規範的檔案路徑,不常用
os.path.getsize(path) 獲取檔案大小,如果path是目錄返回結果是0L或者4096L
>>> os.path.getsize("C:\\Users\\zhigang\\Desktop") #目錄的大小
16384
>>> os.path.getsize("C:\\Users\\zhigang\\Desktop\\gang.txt") #檔案的大小
45
>>> os.path.getsize("test")
4096
當檔案不存在時,報錯:FileNotFoundError: [WinError 2] 系統找不到指定的檔案。
os.path.splitext(path):分離檔名與副檔名,以元組的形式返回
>>> os.path.splitext("C:\\Users\\zhigang\\Desktop\\zhigang.py")
('C:\\Users\\zhigang\\Desktop\\zhigang', '.py')
>>> os.path.splitext("C:\\Users\\zhigang\\Desktop\\gang.txt")
('C:\\Users\\zhigang\\Desktop\\gang', '.txt')
>>> path="C:\\Users\\zhigang\\Desktop\\gang.txt"
>>> os.path.split(path)[1]
'gang.txt'
>>> os.path.splitext(path)[1]
'.txt'
os.path.splitdrive(path):拆分驅動器和檔案路徑,並以元組返回結果;
>>> os.path.splitdrive("c:\\test")
('c:', '\\test')
>>> os.path.splitdrive("c:\\test")[0]
'c:'
os.path.getatime():獲取檔案的訪問時間
>>> os.path.getatime("zhigang.py")
1534600200.4937067
import os
import time
#獲取檔案最後訪問時間
lastTime = os.path.getatime("test")
print (lastTime)
#將時間戳轉成時間元組
formatTime = time.localtime(lastTime)
print (formatTime)
#格式化時間元組為時間字串
print (time.strftime("%Y-%m-%d %H:%M:%S", formatTime))
os.path.getmtime(filename):獲取檔案的修改時間
>>> os.path.getmtime("gang.txt")
1534493723.1105375
os.path.getctime(filename):獲取檔案的建立時間
>>> os.path.getctime("gang.txt")
1534338653.4706845