栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何读取目录中的文件属性?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何读取目录中的文件属性?

在查找目录中所有文件的文件属性时,如果您使用的是Python
3.5或更高版本,请使用

os.scandir()
函数获取
合并了文件属性 的目录列表。与使用
os.listdir()
然后分别检索文件属性相比,这可能更有效:

import oswith os.scandir() as dir_entries:    for entry in dir_entries:        info = entry.stat()        print(info.st_mtime)

在Windows上使用时,该

DirEntry.stat()
函数不必进行任何其他系统调用,文件修改时间已经可用。数据已缓存,因此其他
entry.stat()
调用不会进行其他系统调用。

您还可以使用

pathlib
模块面向对象实例来实现相同的目的:

from pathlib import Pathfor path in Path('.').iterdir():    info = path.stat()    print(info.st_mtime)

在较早的Python版本上,您可以使用

os.stat
调用获取文件属性,例如修改时间。

import osfor filename in os.listdir():    info = os.stat(filename)    print(info.st_mtime)

st_mtime
是python
2.5及更高版本上的float值,表示自纪元以来的秒数;使用
time
datetime
模块来解释这些内容以用于显示目的或类似目的。

请注意,该值的精度取决于您使用的操作系统:

st_atime,st_mtime和st_ctime属性的确切含义和解析度取决于操作系统和文件系统。例如,在使用FAT或FAT32文件系统的Windows系统上,st_mtime具有2秒的分辨率,而st_atime仅具有1天的分辨率。有关详细信息,请参见您的操作系统文档。

如果您要做的只是获取修改时间,那么该

os.path.getmtime
方法是一个方便的快捷方式;它
os.stat
在后台使用该方法。

但是请注意,该

os.stat
调用相对昂贵(文件系统访问),因此,如果对大量文件执行此操作,并且每个文件需要多个数据点,则最好使用
os.stat
并重用返回的信息,而不是使用
os.path
便捷方法,
os.stat
每个文件将被多次调用。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/661113.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号