遍历、搜索文件以及查询文件信息 Python自动化办公

鳄鱼君

发表文章数:642

Vieu四代商业主题

高扩展、安全、稳定、响应式布局多功能模板。

¥69 现在购买
首页 » Python » 遍历、搜索文件以及查询文件信息 Python自动化办公

遍历文件夹

使用os.walk(指定的绝对路径或相对路径),可以把文件夹里的文件都找出来

import os
for dirpath,dirnames,files in os.walk('./'):
    print(f'发现文件夹:{dirpath}')
    print(files)
# dirpath:文件夹路径
# dirnames:dirpath这个文件夹下的子文件夹列表
# files:是dirpath这个文件夹里的文件列表

搜索、匹配文件名称

利用字符串内置的方法字符串A.startswith(字符串B):判断字符串A是否以字符串B开头,同理endswith()是判断字符串A是否以字符串B结尾

也可以使用glob模块,现在输出当前文件夹下的任意py文件

import glob
print(glob.glob('*.py')) # 当前目录下的任意py文件
print(glob.glob('eyujun*.py')) # 当前目录下已eyujun开头的py文件 

星号(*)代表匹配所有,问号(?)代表任何单个字符[seq]匹配seq中的任何字符,[!seq]匹配任何不在seq中的字符,

**表示任意层文件或文件夹,recursive=True会不断进入文件夹内,也就是递归的寻找文件夹这里自己尝试效果

匹配文件名

使用fnmatch模块可以用来匹配文件名

import fnmatch
print(fnmatch.fnmatch('asyn_cio.py','as*.py'))

查询文件信息

os.scandir()返回的文件都可以查询信息:

import os
for file in os.scandir(): # 默认是当前路径下的文件
    print(file.stat())
# os.stat_result(st_mode=33206, st_ino=0, st_dev=0, st_nlink=0, st_uid=0, st_gid=0, st_size=1509506, st_atime=1585544160, st_mtime=1589287741, st_ctime=1585544160)

文件信息属性:

st_size:文件的体积大小(单位:bytes),除以1024就是KB
st_atime:文件的最近访问时间
st_mtime:文件的最近修改时间
st_ctime:Windows下表示创建时间
st_birthtime:只在Mac、Linux下可用,表示创建时间

可以看到st_ctime返回的是1585544160,这种时间就做Unix时间戳,可以利用Python转换为正常时间:

import time
print(time.ctime(1585544160))
# Mon Mar 30 12:56:00 2020

两者结合使用:

import time
import os
for file in os.scandir(): # 默认是当前路径下的文件
    print(file.name,time.ctime(file.stat().st_mtime))
# 2.png Tue May 12 20:49:01 2020

也可以使用datetime模块:

import datetime
that_time=datetime.datetime.fromtimestamp(1585544160)
print(that_time)
print(that_time.hour,that_time.minute,that_time.second)

# 2020-03-30 12:56:00
# 12 56 0

单独查询指定文件信息

os.stat()可以传入指定文件,来查看指定文件的信息:

import os
print(os.stat('2.png'))

未经允许不得转载:作者:鳄鱼君, 转载或复制请以 超链接形式 并注明出处 鳄鱼君
原文地址:《遍历、搜索文件以及查询文件信息 Python自动化办公》 发布于2020-05-15

分享到:
赞(0) 赏杯咖啡

评论 抢沙发

5 + 1 =


文章对你有帮助可赏作者一杯咖啡

支付宝扫一扫打赏

微信扫一扫打赏

Vieu4.6主题
专业打造轻量级个人企业风格博客主题!专注于前端开发,全站响应式布局自适应模板。
切换注册

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

Q Q 登 录
微 博 登 录
切换登录

注册