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中pygame的mouse鼠标事件用法实例
Nov 11 Python
使用Python来编写HTTP服务器的超级指南
Feb 18 Python
Python2.x利用commands模块执行Linux shell命令
Mar 11 Python
Python中shutil模块的常用文件操作函数用法示例
Jul 05 Python
python中文乱码不着急,先看懂字节和字符
Dec 20 Python
python生成器,可迭代对象,迭代器区别和联系
Feb 04 Python
pandas修改DataFrame列名的方法
Apr 08 Python
Python使用matplotlib实现的图像读取、切割裁剪功能示例
Apr 28 Python
python将字符串以utf-8格式保存在txt文件中的方法
Oct 30 Python
TensorFlow卷积神经网络之使用训练好的模型识别猫狗图片
Mar 14 Python
在python中计算ssim的方法(与Matlab结果一致)
Dec 19 Python
Anaconda详细安装步骤图文教程
Nov 12 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
linux下删除7天前日志的代码(php+shell)
2011/01/02 PHP
php 常用的系统函数
2017/02/07 PHP
PHP环形链表实现方法示例
2017/09/15 PHP
一段好玩的JavaScript代码
2006/12/01 Javascript
javascript getElementsByClassName 和js取地址栏参数
2010/01/02 Javascript
JS无限极树形菜单,json格式、数组格式通用示例
2013/07/30 Javascript
从jquery的过滤器.filter()方法想到的
2013/09/29 Javascript
Javascript单元测试框架QUnitjs详细介绍
2014/05/08 Javascript
在浏览器中实现图片粘贴的jQuery插件-- pasteimg使用指南
2014/12/29 Javascript
javascript实现选中复选框后相关输入框变灰不可用的方法
2015/08/11 Javascript
jQuery网页版打砖块小游戏源码分享
2015/08/20 Javascript
Express实现前端后端通信上传图片之存储数据库(mysql)傻瓜式教程(一)
2015/12/10 Javascript
浅析javascript异步执行函数导致的变量变化问题解决思路
2016/05/13 Javascript
Angular1.x复杂指令实例详解
2017/03/01 Javascript
详解通过JSON数据使用VUE.JS
2017/05/26 Javascript
浅谈Angularjs中不同类型的双向数据绑定
2018/07/16 Javascript
对vue中methods互相调用的方法详解
2018/08/30 Javascript
vue项目环境变量配置的实现方法
2018/10/12 Javascript
layui在form表单页面通过Validform加入简单验证的方法
2019/09/06 Javascript
vue设置动态请求地址的例子
2019/11/01 Javascript
[02:58]献给西雅图的情书_高清
2014/05/29 DOTA
jupyter notebook引用from pyecharts.charts import Bar运行报错
2020/04/23 Python
Python爬虫的两套解析方法和四种爬虫实现过程
2018/07/20 Python
python用pip install时安装失败的一系列问题及解决方法
2020/02/24 Python
Selenium启动Chrome时配置选项详解
2020/03/18 Python
HTML5实现动画效果的方式汇总
2016/02/29 HTML / CSS
预防煤气中毒方案
2014/06/16 职场文书
升学宴答谢词
2015/01/05 职场文书
新教师教学工作总结
2015/08/14 职场文书
外出培训学习心得体会
2016/01/18 职场文书
2016年村党支部公开承诺书
2016/03/24 职场文书
2016年机关单位节能宣传周活动总结
2016/04/05 职场文书
Python 高级库15 个让新手爱不释手(推荐)
2021/05/15 Python
Python数据类型最全知识总结
2021/05/31 Python
python实现Nao机器人的单目测距
2021/09/04 Python
Python线程池与GIL全局锁实现抽奖小案例
2022/04/13 Python