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中的内置函数getattr()介绍及示例
Jul 20 Python
详解Python的collections模块中的deque双端队列结构
Jul 07 Python
Python3.5编程实现修改IIS WEB.CONFIG的方法示例
Aug 18 Python
Python数据分析库pandas基本操作方法
Apr 08 Python
Django中提供的6种缓存方式详解
Aug 05 Python
pymysql模块的使用(增删改查)详解
Sep 09 Python
在Django中实现添加user到group并查看
Nov 18 Python
使用pyshp包进行shapefile文件修改的例子
Dec 06 Python
浅谈tensorflow之内存暴涨问题
Feb 05 Python
python实现飞船大战
Apr 24 Python
关于Keras Dense层整理
May 21 Python
Python GUI之tkinter窗口视窗教程大集合(推荐)
Oct 20 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
thinkPHP5.0框架环境变量配置方法
2017/03/17 PHP
phpStudy 2016 使用教程详解(支持PHP7)
2017/10/18 PHP
javascript 动态参数判空操作
2008/12/22 Javascript
jquery 插件之仿“卓越亚马逊”首页弹出菜单效果
2008/12/25 Javascript
jquery 操作单选框,复选框,下拉列表实现代码
2009/10/27 Javascript
jQuery调用RESTful WCF示例代码(GET方法/POST方法)
2014/01/26 Javascript
javascript连续赋值问题
2015/07/08 Javascript
js实现带圆角的多级下拉菜单效果
2015/08/28 Javascript
JS仿百度自动下拉框模糊匹配提示
2016/07/25 Javascript
微信小程序开发之视频播放器 Video 弹幕 弹幕颜色自定义实例
2016/12/08 Javascript
Bootstrap table使用方法详细介绍
2016/12/09 Javascript
JS小数转换为整数的方法分析
2017/01/07 Javascript
jQuery EasyUI Draggable拖动组件
2017/03/01 Javascript
浅谈mint-ui 填坑之路
2017/11/06 Javascript
Node.js中的child_process模块详解
2018/06/08 Javascript
vue-cli3 karma单元测试的实现
2019/01/18 Javascript
Python命令行解析模块详解
2018/02/01 Python
python学生信息管理系统(完整版)
2020/04/05 Python
Python + Flask 实现简单的验证码系统
2019/10/01 Python
详解Python修复遥感影像条带的两种方式
2020/02/23 Python
python GUI库图形界面开发之PyQt5浏览器控件QWebEngineView详细使用方法
2020/02/26 Python
Python eval函数原理及用法解析
2020/11/14 Python
python解决OpenCV在读取显示图片的时候闪退的问题
2021/02/23 Python
Html5实现用户注册自动校验功能实例代码
2016/05/24 HTML / CSS
英国著名书店:Foyles
2018/12/01 全球购物
加拿大在线旅游公司:Flighthub
2019/03/11 全球购物
什么是三层交换,说说和路由的区别在那里
2014/09/01 面试题
我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串?
2014/03/30 面试题
迟到检讨书400字
2014/01/13 职场文书
西式婚礼主持词
2014/03/13 职场文书
幼儿园大班毕业评语
2014/12/31 职场文书
社区三八妇女节活动总结
2015/02/06 职场文书
安全生产感想
2015/08/07 职场文书
学会感恩主题班会
2015/08/12 职场文书
文案策划岗位个人自我评价(范文)
2019/08/08 职场文书
详解MySQL的Seconds_Behind_Master
2021/05/18 MySQL