Python os模块提供了许多与操作系统交互的方法,其中os.stat()方法可以获取文件的一些属性,如:文件大小、创建时间、是否为链接等等。本文将从多个方面详细阐述os.stat()方法的常用方法及其用法。
一、获取文件大小
使用os.stat()方法可以获取文件的大小,代码如下:
import os file_size = os.stat('example.txt').st_size print('example.txt文件大小为:', file_size, 'Bytes')
输出结果为:
example.txt文件大小为: 1024 Bytes
其中,st_size属性即为获取文件大小的方法。
二、获取文件创建、修改、访问时间
使用os.stat()方法也可以获取文件的创建时间、修改时间和访问时间,代码如下:
import os import time file_stat = os.stat('example.txt') file_ctime = time.localtime(file_stat.st_ctime) file_mtime = time.localtime(file_stat.st_mtime) file_atime = time.localtime(file_stat.st_atime) print('example.txt文件创建时间为:', time.strftime('%Y-%m-%d %H:%M:%S', file_ctime)) print('example.txt文件修改时间为:', time.strftime('%Y-%m-%d %H:%M:%S', file_mtime)) print('example.txt文件访问时间为:', time.strftime('%Y-%m-%d %H:%M:%S', file_atime))
输出结果为:
example.txt文件创建时间为: 2022-01-01 00:00:00 example.txt文件修改时间为: 2022-01-02 00:00:00 example.txt文件访问时间为: 2022-01-03 00:00:00
其中,st_ctime属性为文件创建时间,st_mtime属性为文件修改时间,st_atime属性为文件访问时间。
三、判断是否为链接
使用os.stat()方法可以判断一个文件是否为链接,代码如下:
import os is_link = os.stat('example.txt').st_mode if is_link & 0o40000: print('example.txt是一个链接文件') else: print('example.txt不是一个链接文件')
输出结果为:
example.txt不是一个链接文件
其中,st_mode属性可以判断文件的类型,0o40000为链接文件的特殊标识。
总结:
本文详细讲解了Python os.stat()方法的常用方法,并给出了对应的代码示例。在实际开发中,使用os.stat()方法可以获取文件的一些属性,方便开发者做出针对性的操作。