python文档的查看-python文件信息查看和修改
這篇文章主要介紹文件信息的獲取和修改(主要是文件的訪問和修改時間)
文件信息的讀取
文件系統本身可以顯示有關文檔的一些有趣信息。例如,它可以告訴你文檔文件的大小,以及創建/修改或上次讀取的時間。在某些平臺上,你還可以找出擁有相關文件的人員。要在Python中獲取此信息,您可以在跨平臺的os模塊中使用stat函數:
1
2
3
4
5import os
st = os.stat("d:/test.html")
print("Type of st:", type(st))
print("st:", st)
輸出(stream):
Type of st: st: os.stat_result(st_mode=33206, st_ino=10133099161596645, st_dev=3649960629, st_nlink=1, st_uid=0, st_gid=0, st_size=9649, st_atime=1561387614, st_mtime=1561387614, st_ctime=1552207589)
如果你懂點英文可能已經看出來我們可以獲取的信息:
mod: 此文件的訪問權限
ino/dev: ino(I節點)和dev(設備)成員可用于確定文件的物理位置。在UNIX系統上,(dev,ino)可以唯一標識物理文件。在Windows系統上,設備編號對應于驅動器號
nlink: 在UNIX系統上,這是此文件的硬鏈接數。在Windows下,此成員始終為1。
uid,gid: 在UNIX系統上,這些可用于確定給定文件的所有者。在Windows下,這些都為0。
size: 文件的大小,以字節為單位。
atime, mtime, ctime: 上次訪問文件,上次修改文件以及上次更改文件信息的時間。時間以秒為單位,因為參考時間(“epoch”,通常是1970年)與time.time()一起返回當前時間。在Windows下,上次訪問的時間通常無效。
下面是一個例子, 用來打印文件的大小和修改時間:
1
2
3st = os.stat("d:/test.html")
print("size:", st.st_size)
print("修改時間:", st.st_mtime)
輸出(stream):
size: 9649
修改時間: 1561387614.9498422
如果你想要看到人類能讀懂的時間, 可以使用time模塊進行轉換:
1
2
3import time
time.asctime(time.localtime(st.st_mtime))
輸出(plain):
"Mon Jun 24 22:46:54 2019"
os模塊還提供了一個fstat函數,可以在打開的文件中使用。它需要一個整數文件句柄,而不是文件對象,因此您必須在文件對象上使用fileno方法以便獲取文件句柄:
1
2
3f = open("d:/test.html", "r")
st = os.fstat(f.fileno())
print(st)
輸出(stream):
os.stat_result(st_mode=33206, st_ino=10133099161596645, st_dev=3649960629, st_nlink=1, st_uid=0, st_gid=0, st_size=9613, st_atime=1561427779, st_mtime=1561427779, st_ctime=1552207589)
修改”文件的修改時間”
語法是: os.utime(path, time)
path – 文件路徑
times – 如果時間是 None, 則文件的訪問和修改設為當前時間 。 否則, 時間是一個 2-tuple數字, (atime, mtime) 用來分別作為訪問和修改的時間。 注意atime和mtime都是參考1970年的時間戳。
我們用下面的小例子來說明:
1
2
3
4
5
6
7
8
9now = time.time()
print("當前的時間:", now)
# 文件真實的訪問和修改時間
st = os.stat("d:/test.html")
print("文件的真實修改時間:", st.st_mtime)
# 修改文件修改時間
os.utime("d:/test.html", (now, now-100))
st = os.stat("d:/test.html")
print("文件的修改時間變成:", st.st_mtime)
輸出(stream):
當前的時間: 1561428715.2898495
文件的真實修改時間: 1561428043.960675
文件的修改時間變成: 1561428615.2898495
1
2
注意
本文由jupyter notebook轉換而來, 您可以在這里下載notebook
有問題可以直接在下方留言
或者給我發郵件675495787[at]qq.com
請記住我的網址: mlln.cn 或者 jupyter.cn
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的python文档的查看-python文件信息查看和修改的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python代码_如何使用 Sphinx
- 下一篇: websocket python爬虫_p