python文件与路径操作神器 pathlib


Posted in Python onApril 01, 2022

pathlib中封装了PurePath和Path类,前者用于处理路径风格的字符串;后者是前者的子类,可直接处理路径。

PurePath最甜的功能是重载了运算符,从而可以实现类似下面这种

>>> from pathlib import Path, PurePath
>>> pp = PurePath("E:/")
>>> pp
PureWindowsPath('E:/')
>>> pp/"test"
PureWindowsPath('E:/test')

对于PurePath对象来说,可调用下面的成员或成员函数:

python文件与路径操作神器 pathlib

其中,主文件名即去除后缀之后的文件名。

PurePath类中还有一些稍微复杂的函数,

>>> pp = PurePath("E:\Code\test.py")
# 用于匹配文件后缀
>>> pp.match("*.py")
True
# 去除基准路径
>>> pp.relative_to("E:\\")
PureWindowsPath('Code\test.py')
# 更改文件名
>>> pp.with_name('test1.py')
PureWindowsPath('E:/test1.py')
# 更改后缀名
>>> pp.with_suffix(".md")
PureWindowsPath('E:/Code\test.md')
# 更改主文件名
>>> pp.with_stem("help.md")
PureWindowsPath('E:/help.md.py')

Path

Path是PurePath的子类,在PurePath的基础上添加了一些判定函数,

   
判定函数 ,is_file,is_fifo,
is_block_device,is_char_device,
is_mount,is_symlink,is_socket

Path对象还可以打开并写入数据,但令人绝望的是并没有close函数,所以并不建议使用。或者说,这个Path.open不像是给程序员使用的,因为Path中提供了更加便捷的读写方式read_bytes,read_text以及write_bytes、write_text。

例如:

>>> p = Path(r'E:\Documents\00\0324\Test.txt')
>>> p.write_text("hello world")
11
>>> p.read_text()
'hello world'
>>>

此外,可用于直接操作文件和文件夹,提供了非常强大的文件处理功能。Path和os中提供的函数在功能上对应如下

python文件与路径操作神器 pathlib

python文件与路径操作神器 pathlib

到此这篇关于python文件与路径操作神器 pathlib的文章就介绍到这了,更多相关python 中的pathlib内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python实现批量读取word中表格信息的方法
Jul 30 Python
剖析Python的Tornado框架中session支持的实现代码
Aug 21 Python
python urllib urlopen()对象方法/代理的补充说明
Jun 29 Python
Python数据结构与算法之图的基本实现及迭代器实例详解
Dec 12 Python
python自动发送邮件脚本
Jun 20 Python
Python实现获取系统临时目录及临时文件的方法示例
Jun 26 Python
使用Django搭建一个基金模拟交易系统教程
Nov 18 Python
如何将 awk 脚本移植到 Python
Dec 09 Python
Python csv文件记录流程代码解析
Jul 16 Python
常用的10个Python实用小技巧
Aug 10 Python
python实现按日期归档文件
Jan 30 Python
Python开发之QT解决无边框界面拖动卡屏问题(附带源码)
May 27 Python
Python下载商品数据并连接数据库且保存数据
Python turtle编写简单的球类小游戏
Pandas实现DataFrame的简单运算、统计与排序
Mar 31 #Python
Pandas数据结构之Series的使用
Mar 31 #Python
python获取字符串中的email
Mar 31 #Python
Python利用FlashText算法实现替换字符串
详解Python flask的前后端交互
Mar 31 #Python
You might like
php+dojo 的数据库保存拖动布局的一个方法dojo 这里下载
2007/03/07 PHP
PHP CURL CURLOPT参数说明(curl_setopt)
2013/09/30 PHP
php实现的漂亮分页方法
2014/04/17 PHP
php图像处理类实例
2015/07/28 PHP
php中请求url的五种方法总结
2017/07/13 PHP
PHP 访问数据库配置通用方法(json)
2018/05/20 PHP
Aliyun Linux 编译安装 php7.3 tengine2.3.2 mysql8.0 redis5的过程详解
2020/10/20 PHP
JavaScript 数组的 uniq 方法
2008/01/23 Javascript
jQuery实现鼠标经过图片预览大图效果
2014/04/10 Javascript
常用的jQuery前端技巧收集
2014/12/24 Javascript
jQuery和AngularJS的区别浅析
2015/01/29 Javascript
JavaScript 数组的深度复制解析
2016/11/02 Javascript
vue.js给动态绑定的radio列表做批量编辑的方法
2018/02/28 Javascript
使用Layer组件弹出多个对话框(非嵌套)与关闭及刷新的例子
2019/09/25 Javascript
js中延迟加载和预加载的具体使用
2021/01/14 Javascript
vue 项目@change多个参数传值多个事件的操作
2021/01/29 Vue.js
[00:35]DOTA2上海特级锦标赛 Newbee战队宣传片
2016/03/03 DOTA
[00:20]TI9不朽观赛名额抽取
2019/08/05 DOTA
python列表操作之extend和append的区别实例分析
2015/07/28 Python
通过Python来使用七牛云存储的方法详解
2015/08/07 Python
python嵌套函数使用外部函数变量的方法(Python2和Python3)
2016/01/31 Python
Python 基于Twisted框架的文件夹网络传输源码
2016/08/28 Python
django 连接数据库 sqlite的例子
2019/08/14 Python
python基于plotly实现画饼状图代码实例
2019/12/16 Python
pytorch:实现简单的GAN示例(MNIST数据集)
2020/01/10 Python
Python之变量类型和if判断方式
2020/05/05 Python
Python通过kerberos安全认证操作kafka方式
2020/06/06 Python
如何用Anaconda搭建虚拟环境并创建Django项目
2020/08/02 Python
Infababy英国:婴儿推车、Travel System婴儿车和婴儿汽车座椅销售
2018/05/23 全球购物
美国伊甸园兄弟种子公司:Eden Brothers
2018/07/01 全球购物
Java的for语句中break, continue和return的区别
2013/12/19 面试题
应届生找工作求职信
2014/06/24 职场文书
2014年幼儿园教师工作总结
2014/11/08 职场文书
大学军训决心书
2015/02/05 职场文书
增值税发票丢失证明
2015/06/19 职场文书
2016廉洁从政心得体会
2016/01/19 职场文书