文件11:文件路径-目录文件读取方法

目录

1. 目录读取

p.glob(pattern)

p.rglob(pattern)  

p.iterdir()  

2. 文件读取

p.read_bytes()  

p.read_text(encoding=None, errors=None)  


下述方法,基于pathlib.PurePath、pathlib.Path函数模块。

1. 目录读取

p.glob(pattern)

解析该路径,找到与 pattern 参数匹配的所有文件;

pattern 可以使用  * 作为路径中部分内容的模糊替代,** 表示在本路径文件夹以及下面的所有子文件夹中进行查询;

路径指向文件,则查询为空;

返回结果为生成器表达式,可通过 list() 等函数转换为序列后进行读取。

p = Path('D:\\PycharmProject\\测试文件')

#返回结果不可以直接读取
p.glob('*.txt')
<generator object Path.glob at 0x000001C88F177E40>

#查询路径文件夹下所有文件和文件夹
list(p.glob('*'))
[WindowsPath('D:/PycharmProject/测试文件/test.py'), WindowsPath('D:/PycharmProject/测试文件/test.txt'), WindowsPath('D:/PycharmProject/测试文件/test2.txt'), WindowsPath('D:/PycharmProject/测试文件/xxx.doc'), WindowsPath('D:/PycharmProject/测试文件/二级测试文件夹')]

#查询路径文件夹和下面所有子文件夹
list(p.glob('**'))
[WindowsPath('D:/PycharmProject/测试文件'), WindowsPath('D:/PycharmProject/测试文件/二级测试文件夹')]

#查询路径文件夹下所有 .txt 文件
list(p.glob('*.txt'))
[WindowsPath('D:/PycharmProject/测试文件/test.txt'), WindowsPath('D:/PycharmProject/测试文件/test2.txt')]

#查询路径文件夹及所有子文件夹 .txt 文件
list(p.glob('**/*.txt'))
[WindowsPath('D:/PycharmProject/测试文件/test.txt'), WindowsPath('D:/PycharmProject/测试文件/test2.txt'), WindowsPath('D:/PycharmProject/测试文件/二级测试文件夹/test11.txt')]

#查询路径文件夹及所有子文件夹文件
list(p.glob('**/*.*'))
[WindowsPath('D:/PycharmProject/测试文件/test.py'), WindowsPath('D:/PycharmProject/测试文件/test.txt'), WindowsPath('D:/PycharmProject/测试文件/test2.txt'), WindowsPath('D:/PycharmProject/测试文件/xxx.doc'), WindowsPath('D:/PycharmProject/
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

燃烧的火鸟啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值