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 相关文章推荐
Eclipse + Python 的安装与配置流程
Mar 05 Python
Python机器学习之SVM支持向量机
Dec 27 Python
Python实现判断一行代码是否为注释的方法
May 23 Python
基于数据归一化以及Python实现方式
Jul 11 Python
python中的插值 scipy-interp的实现代码
Jul 23 Python
python通过zabbix api获取主机
Sep 17 Python
Django在admin后台集成TinyMCE富文本编辑器的例子
Aug 09 Python
python生成器用法实例详解
Nov 22 Python
python实现拉普拉斯特征图降维示例
Nov 25 Python
python3使用Pillow、tesseract-ocr与pytesseract模块的图片识别的方法
Feb 26 Python
使用Keras 实现查看model weights .h5 文件的内容
Jun 09 Python
python录音并调用百度语音识别接口的示例
Dec 01 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中的extract的作用分析
2008/04/09 PHP
浅谈COOKIE和SESSION区别
2015/07/19 PHP
PHP抓取淘宝商品的用户晒单评论+图片+搜索商品列表实例
2016/04/14 PHP
php仿微信红包分配算法的实现方法
2016/05/13 PHP
完美解决php 导出excle的.csv格式的数据时乱码问题
2017/02/18 PHP
PHP设计模式之适配器模式定义与用法详解
2018/04/03 PHP
如何实现浏览器上的右键菜单
2006/07/10 Javascript
javascript入门·动态的时钟,显示完整的一些方法,新年倒计时
2007/10/01 Javascript
javascript 硬盘序列号+其它硬件信息
2008/12/23 Javascript
js加减乘除丢失精度问题解决方法
2014/05/16 Javascript
浅谈javascript中this在事件中的应用
2015/02/15 Javascript
JavaScript数组前面插入元素的方法
2015/04/06 Javascript
JS实现当前页居中分页效果的方法
2015/06/18 Javascript
理解JavaScript中worker事件api
2015/12/25 Javascript
jQuery实现带水平滑杆的焦点图动画插件
2016/03/08 Javascript
JavaScript:Date类型全面解析
2016/05/19 Javascript
Bootstrap源码解读表单(2)
2016/12/22 Javascript
JS数组去重(4种方法)
2017/03/27 Javascript
详解React-Native全球化多语言切换工具库react-native-i18n
2017/11/03 Javascript
JavaScript Math对象和调试程序的方法分析
2019/05/13 Javascript
Vue全局loading及错误提示的思路与实现
2019/08/09 Javascript
angularjs自定义过滤器demo示例
2019/08/24 Javascript
微信小程序引入VANT组件的方法步骤
2019/09/19 Javascript
vue中axios封装使用的完整教程
2021/03/03 Vue.js
[06:30]DOTA2英雄梦之声_第15期_死亡先知
2014/06/21 DOTA
Python操作MySQL数据库9个实用实例
2015/12/11 Python
Flask实现图片的上传、下载及展示示例代码
2018/08/03 Python
5分钟 Pipenv 上手指南
2018/12/20 Python
python爬虫 urllib模块url编码处理详解
2019/08/20 Python
Python注释、分支结构、循环结构、伪“选择结构”用法实例分析
2020/01/09 Python
Python中socket网络通信是干嘛的
2020/05/27 Python
css3实现平移效果(transfrom:translate)的示例
2020/11/13 HTML / CSS
HTML5语义化元素你真的用对了吗
2019/08/22 HTML / CSS
中国高端家电购物商城:顺电
2018/03/04 全球购物
八年级物理教学反思
2014/01/19 职场文书
java项目构建Gradle的使用教程
2022/03/24 Java/Android