Python-获取文件状态模块-os stat lastat fstat path

案例:

       在某项目中,需要获取文件状态,如:

  1. 文件的类型(普通文件、目录、符合连接、设备文件)
  2. 文件的访问权限
  3. 文件最后 访问、修改、节点状态 时间
  4. 普通文件大小
  5. ……

如何解决?

       方法1:通过os原始接口,stat() , lstat(),fstat()

              stat()      文件所有属性

              lstat()     不查看链接文件类型

              fstat()     传入参数为文件描叙符

#!/usr/bin/python3

import os
import stat

s = os.stat('python.PNG')
print(s)
print(bin(s.st_mode))

# 判断文件是否为目录
print(stat.S_ISDIR(s.st_mode))

# 判断文件是否是普通文件
print(stat.S_ISREG(s.st_mode))

# 判断文件权限
# 可读,user,大于0为真
print(s.st_mode & stat.S_IRUSR)

# 可执行,user
print(s.st_mode & stat.S_IXGRP)

# 获取文件 访问、修改、节点状态 时间
import time

print(time.localtime(s.st_atime))
print(time.localtime(s.st_ctime))
print(time.localtime(s.st_mtime))

# 获取文件大小
print(s.st_size)

       方法2:os.path下的方法,更简洁

#!/usr/bin/python3

# os.path方法
import os

# 判断文件是否为目录
print(os.path.isdir('python.PNG'))

# 判断文件是否是普通文件
print(os.path.isfile('python.PNG'))


# 获取文件 访问、修改、节点状态 时间
import time

print(time.localtime(os.path.getatime('python.PNG')) )
print(time.localtime(os.path.getmtime('python.PNG')) )
print(time.localtime(os.path.getctime('python.PNG')) )

# 获取文件大小
print(os.path.getsize('python.PNG'))

转载于:https://www.cnblogs.com/2bjiujiu/p/7258563.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值