Python的os.stat()方法用于获取文件的状态信息,包括文件的大小、创建时间、修改时间、访问时间等多个属性。该方法返回的是一个包含文件状态信息的对象,可以通过该对象的属性来访问文件的各种属性信息。
语法
os.stat()的语法如下:
os.stat(path)
其中,path为文件路径,可以是相对路径或绝对路径。
返回值
os.stat()方法返回一个包含文件状态信息的stat_result对象,该对象包含以下属性:
- st_mode:文件的类型和权限;
- st_ino:文件的inode号;
- st_dev:文件所在硬盘的设备号;
- st_nlink:文件的硬链接数;
- st_uid:文件的用户ID;
- st_gid:文件的组ID;
- st_size:文件的大小,以字节为单位;
- st_atime:文件的最后访问时间,最后访问时间是指文件的最后读取或执行时间;
- st_mtime:文件的最后修改时间,最后修改时间是指文件的内容被修改后保存的时间;
- st_ctime:文件状态信息的最后更改时间,最后修改时间是指文件的inode信息或属性被修改后保存的时间。
可以通过该对象的属性来访问文件的各种属性信息。
示例
假设有一个文件/tmp/test.txt,我们可以使用os.stat()方法来获取该文件的状态信息。代码如下:
import os
stat_info = os.stat('/tmp/test.txt')
print('文件大小:', stat_info.st_size)
print('创建时间:', stat_info.st_ctime)
print('修改时间:', stat_info.st_mtime)
print('最后访问时间:', stat_info.st_atime)
运行以上代码,输出结果如下:
文件大小: 13
创建时间: 1632626638.5733955
修改时间: 1632626638.5733955
最后访问时间: 1632626640.5239084
通过stat_info.st_size属性可以获取文件大小,以字节为单位,输出结果为13。通过stat_info.st_ctime、stat_info.st_mtime和stat_info.st_atime属性可以分别获取文件的创建时间、修改时间和最后访问时间,输出结果为时间戳。如果需要将时间戳转换为字符串格式的时间,可以使用time模块的localtime()方法进行转换。
总结
os.stat()方法可以获取文件的状态信息,包括文件的大小、创建时间、修改时间、访问时间等多个属性。使用该方法可以方便地获取文件的属性,并对文件进行一些操作,如复制、移动、删除等。在实际开发中,我们需要根据具体的需求来使用os.stat()方法,从而达到最好的效果。