當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python os.stat用法及代碼示例


用法:

os.stat(path, *, dir_fd=None, follow_symlinks=True)

獲取文件或文件說明符的狀態。在給定路徑上執行相當於 stat() 係統調用。 path 可以指定為字符串或字節 - 直接或間接通過 PathLike 接口 - 或作為打開的文件說明符。返回一個stat_result 對象。

此函數通常遵循符號鏈接;要統計符號鏈接,請添加參數 follow_symlinks=False ,或使用 lstat()

此函數可以支持指定文件說明符而不遵循符號鏈接。

在 Windows 上,傳遞 follow_symlinks=False 將禁用所有 name-surrogate 重解析點,包括符號鏈接和目錄連接。其他與鏈接不相似或操作係統無法跟蹤的重解析點將直接打開。當跟蹤多個鏈接的鏈時,這可能會導致返回原始鏈接而不是阻止完全遍曆的非鏈接。在這種情況下,要獲取最終路徑的統計結果,請盡可能使用os.path.realpath()函數解析路徑名,並在結果上調用lstat()。這不適用於懸空符號鏈接或連接點,這將引發通常的異常。

例子:

>>> import os
>>> statinfo = os.stat('somefile.txt')
>>> statinfo
os.stat_result(st_mode=33188, st_ino=7876932, st_dev=234881026,
st_nlink=1, st_uid=501, st_gid=501, st_size=264, st_atime=1297230295,
st_mtime=1297230027, st_ctime=1297230027)
>>> statinfo.st_size
264

3.3 版中的新函數:添加了dir_fdfollow_symlinks參數,指定文件說明符而不是路徑。

在 3.6 版中更改:接受一個path-like 對象.

在 3.8 版中更改:在 Windows 上,所有可以被操作係統解析的重解析點現在都被跟蹤,並且通過follow_symlinks=False禁用所有名稱代理重解析點。如果操作係統達到它無法遵循的重解析點,stat現在返回原始路徑的信息,就好像follow_symlinks=False已指定而不是引發錯誤。

相關用法


注:本文由純淨天空篩選整理自python.org大神的英文原創作品 os.stat。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。