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 生成不重复的随机数的代码
May 15 Python
python实现bitmap数据结构详解
Feb 17 Python
Python可跨平台实现获取按键的方法
Mar 05 Python
python实现从一组颜色中找出与给定颜色最接近颜色的方法
Mar 19 Python
Python算法之图的遍历
Nov 16 Python
Python线性回归实战分析
Feb 01 Python
python爬虫之xpath的基本使用详解
Apr 18 Python
详解如何设置Python环境变量?
May 13 Python
NumPy排序的实现
Jan 21 Python
python计算波峰波谷值的方法(极值点)
Feb 18 Python
sublime3之内网安装python插件Anaconda的流程
Nov 10 Python
selenium+python自动化78-autoit参数化与批量上传功能的实现
Mar 04 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 图片上添加透明度渐变的效果
2009/06/29 PHP
dhtmlxTree目录树增加右键菜单以及拖拽排序的实现方法
2013/04/26 PHP
PHP连接MSSQL2008/2005数据库(SQLSRV)配置实例
2014/10/22 PHP
php防止sql注入之过滤分页参数实例
2014/11/03 PHP
jquery插件之easing使用
2010/08/19 Javascript
jQuery学习笔记(1)--用jQuery实现异步通信(用json传值)具体思路
2013/04/08 Javascript
jquery 实现两级导航菜单附效果图
2014/03/07 Javascript
JavaScript 经典实例日常收集整理(常用经典)
2016/03/30 Javascript
js 中文汉字转Unicode、Unicode转中文汉字、ASCII转换Unicode、Unicode转换ASCII、中文转换
2016/12/06 Javascript
nodejs基础应用
2017/02/03 NodeJs
bootstrap实现的自适应页面简单应用示例
2017/03/09 Javascript
详解AngularJS 路由 resolve用法
2017/04/24 Javascript
Angular 2父子组件数据传递之局部变量获取子组件其他成员
2017/07/04 Javascript
MUI顶部选项卡的用法(tab-top-webview-main)详解
2017/10/08 Javascript
解决vue项目使用font-awesome,build后路径的问题
2018/09/01 Javascript
vue实现直播间点赞飘心效果的示例代码
2019/09/20 Javascript
[03:15]2014DOTA2国际邀请赛 专访国士无双信心满满
2014/07/12 DOTA
[54:57]DOTA2-DPC中国联赛定级赛 Aster vs DLG BO3第二场 1月8日
2021/03/11 DOTA
Python单元测试框架unittest使用方法讲解
2015/04/13 Python
Python解析excel文件存入sqlite数据库的方法
2016/11/15 Python
Linux RedHat下安装Python2.7开发环境
2017/05/20 Python
wxPython之解决闪烁的问题
2018/01/15 Python
Python数据分析之双色球基于线性回归算法预测下期中奖结果示例
2018/02/08 Python
Django Admin实现三级联动的示例代码(省市区)
2018/06/22 Python
python基于Selenium的web自动化框架
2019/07/14 Python
Python面向对象原理与基础语法详解
2020/01/02 Python
增大python字体的方法步骤
2020/07/05 Python
全面介绍python中很常用的单元测试框架unitest
2020/12/14 Python
详解h5页面在不同ios设备上的问题总结
2019/03/01 HTML / CSS
世界上最好的精品店:Shoptiques
2018/02/05 全球购物
村抢险救灾方案
2014/05/09 职场文书
单位绩效考核方案
2014/05/11 职场文书
培训科主任岗位职责
2014/08/08 职场文书
聘任证明怎么写
2015/03/02 职场文书
2015年安全保卫工作总结
2015/05/14 职场文书
巧用 -webkit-box-reflect 倒影实现各类动效(小结)
2021/04/22 HTML / CSS