Python中os.stat()
函数用于获取指定路径的文件或目录的系统状态相关信息,包括文件大小、创建时间、修改时间、访问时间等。要使用os.stat()
函数,首先需要导入os模块:
import os
os.stat()
函数的语法格式如下:
os.stat(path)
其中path
参数指定要获取的文件或目录的路径。os.stat()
函数的返回值是一个元组,包含文件或目录的系统状态相关信息。元组包含以下几个成员:
- st_mode:文件或目录的权限和类型
- st_ino:inode信息
- st_dev:设备编号
- st_nlink:硬链接数
- st_uid:用户id
- st_gid:组id
- st_size:文件大小(单位:字节)
- st_atime:最近访问时间(时间戳形式)
- st_mtime:最近修改时间(时间戳形式)
- st_ctime:最近状态改变时间(时间戳形式)
下面是一个示例代码:
import os
# 获取文件的系统状态信息
stat_info = os.stat('/etc/passwd')
# 输出文件大小(单位:字节)
print('文件大小(单位:字节): ', stat_info.st_size)
# 输出最近访问时间
print('最近访问时间(时间戳形式): ', stat_info.st_atime)
输出结果如下:
文件大小(单位:字节): 2195
最近访问时间(时间戳形式): 1623436875.583128
上面的代码中,os.stat('/etc/passwd')
函数获取/etc/passwd
文件的系统状态信息,并将返回值保存在stat_info
变量中。然后,通过访问元组中的st_size
和st_atime
成员,分别获取文件大小和最近访问时间。
下面再以另一个示例说明os.stat()
函数的用法。假设我们想要获取当前目录下所有文件(不包含目录)的大小总和,可以使用如下代码:
import os
total_size = 0
for filename in os.listdir('.'):
if os.path.isfile(filename):
stat_info = os.stat(filename)
total_size += stat_info.st_size
print('当前目录文件大小总和(单位:字节): ', total_size)
上面的代码中,os.listdir('.')
函数获取当前目录下的所有文件和目录,返回一个列表。然后通过判断每个列表元素是否是文件(使用os.path.isfile()
函数),如果是文件,则使用os.stat()
函数获取文件大小,并将其累加到total_size
变量中。最后,通过输出total_size
变量,即可得到当前目录下文件大小总和。
以上就是Python中os.stat()
函数获取文件或目录的系统状态信息的详细说明和示例。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python os.stat()如何获取相关文件的系统状态信息 - Python技术站