python文件与路径操作神器 pathlib
pathlib中封装了PurePath
和Path类,前者用于处理路径风格的字符串;后者是前者的子类,可直接处理路径。
PurePath
最甜的功能是重载了运算符,从而可以实现类似下面这种
>>> from pathlib import Path, PurePath >>> pp = PurePath("E:/") >>> pp PureWindowsPath('E:/') >>> pp/"test" PureWindowsPath('E:/test')
对于PurePath对象来说,可调用下面的成员或成员函数:
其中,主文件名即去除后缀之后的文件名。
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 json encode datetime类型
python2.6+ 自带的json模块,不支持datetime的json encode,每次都需要手动转为字符串,很累人,我们可以自己封装一个简单的方法处理此问题。2010-12-12DataFrame:通过SparkSql将scala类转为DataFrame的方法
今天小编就为大家分享一篇DataFrame:通过SparkSql将scala类转为DataFrame的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2019-01-01django model去掉unique_together报错的解决方案
本文给大家分享的是在使用django model去掉unique_together时报错的解决思路和具体步骤,提供给大家参考下,希望对大家学习使用django能够有所帮助2016-10-10
最新评论