让文件路径提取变得更简单的Python Path库


Posted in Python onMay 27, 2021

一、Path 是什么?

该模块提供表示文件系统路径的类,其语义适用于不同的操作系统。路径类被分为提供纯计算操作而没有 I/O 的 纯路径,以及从纯路径继承而来但提供 I/O 操作的 具体路径。

让文件路径提取变得更简单的Python Path库

在一些用例中纯路径很有用,例如:

  • 如果你想要在 Unix 设备上操作 Windows 路径(或者相反)。你不应在 Unix 上实例化一个 WindowsPath,但是你可以实例化 PureWindowsPath。
  • 你只想操作路径但不想实际访问操作系统。在这种情况下,实例化一个纯路径是有用的,因为它们没有任何访问操作系统的操作。

二、使用步骤

1.提取文件名

方法名 : .name

from pathlib import Path

path_str = Path(r"/usr/HinGwenWoong/demo.py")
path_file_name = path_str.name
print(path_file_name)

输出

demo.py

2.提取父文件路径

方法名 : .parent

from pathlib import Path

path_str = Path(r"/usr/HinGwenWoong/demo.py")
path_parent_path = path_str.parent
print(path_parent_path)

输出

\user\HinGwenWoong

3.提取文件后缀

方法名 : .suffix

from pathlib import Path

path_str = Path(r"/usr/HinGwenWoong/demo.py")
path_suffix = path_str.suffix
print(path_suffix)

输出

.py

4.提取无后缀的文件名

方法名 : .stem

from pathlib import Path

path_str = Path(r"/usr/HinGwenWoong/demo.py")
path_only_name = path_str.stem
print(path_only_name )

输出

demo

5.更改文件后缀

方法名 : .with_suffix

from pathlib import Path

path_str = Path(r"/usr/HinGwenWoong/demo.py")
path_suffix = path_str.with_suffix(".json")
print(path_suffix)

输出

\user\HinGwenWoong\demo.json

6.遍历文件

方法名 : .iterdir()

from pathlib import Path

path_str = Path(r"/usr/HinGwenWoong/logs")
for path in path_str.iterdir():
    print(path)

输出

/user/HinGwenWoong/log/20210517.log
/user/HinGwenWoong/log/20210518.log
/user/HinGwenWoong/log/20210519.log
/user/HinGwenWoong/log/20210524.log
/user/HinGwenWoong/log/20210525.log

7.组合文件路径

方法名 : .joinpath

from pathlib import Path

path_str = Path(r"/usr/HinGwenWoong/")
path_str_join = path_str.joinpath("demo.py")
print(path_str_join)

输出

\user\HinGwenWoong\demo.py

8.是否绝对路径

方法名 : is_absolute()

from pathlib import Path

path_str = Path(r"/usr/HinGwenWoong/")
print(path_str.is_absolute())

输出

True

9.是否文件夹 or 文件

方法名 : is_dir()is_file()

from pathlib import Path

path_str = Path(r"/usr/HinGwenWoong/")
print(path_str.is_dir())
print(path_str.is_file())

输出

True
False

10.是否存在

方法名 : .exists()

from pathlib import Path

path_str = Path(r"/usr/HinGwenWoong/")
print(path_str.exists())

输出

True

11.glob

方法名 : .glob

from pathlib import Path

path_str = Path(r"/user/HinGwenWoong/scripts")
print(path_str.glob('*.py'))

输出

[PosixPath('/user/HinGwenWoong/scripts/demo_1.py'),
PosixPath('/user/HinGwenWoong/scripts/demo_2.py')]

到此这篇关于让文件路径提取变得更简单的Python Path库的文章就介绍到这了,更多相关Python Path库内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Fabric 应用案例
Aug 28 Python
详解python实现线程安全的单例模式
Mar 05 Python
Python实现在某个数组中查找一个值的算法示例
Jun 27 Python
Python解决两个整数相除只得到整数部分的实例
Nov 10 Python
python for 循环获取index索引的方法
Feb 01 Python
Django实现学生管理系统
Feb 26 Python
python的内存管理和垃圾回收机制详解
May 18 Python
Python完成毫秒级抢淘宝大单功能
Jun 06 Python
python实现超市管理系统(后台管理)
Oct 25 Python
如何使用python实现模拟鼠标点击
Jan 06 Python
解决keras,val_categorical_accuracy:,0.0000e+00问题
Jul 02 Python
python实现数据结构中双向循环链表操作的示例
Oct 09 Python
Pytorch中的数据集划分&正则化方法
Pytorch 如何实现常用正则化
PyTorch 实现L2正则化以及Dropout的操作
Python开发之QT解决无边框界面拖动卡屏问题(附带源码)
pytorch 实现在测试的时候启用dropout
使用Python脚本对GiteePages进行一键部署的使用说明
教你使用Python pypinyin库实现汉字转拼音
You might like
弹出模态框modal的实现方法及实例
2017/09/19 PHP
Javascript 解疑
2009/11/11 Javascript
javascript学习笔记(二十) 获得和设置元素的特性(属性)
2012/06/20 Javascript
原生js实现跨浏览器获取鼠标按键的值
2013/04/08 Javascript
jQuery实现级联下拉框实战(5)
2017/02/08 Javascript
详解angularjs中的隔离作用域理解以及绑定策略
2017/05/31 Javascript
JS去掉字符串前后空格、阻止表单提交的实现代码
2017/06/08 Javascript
Koa项目搭建过程详细记录
2018/04/12 Javascript
小程序实现悬浮搜索框
2019/07/12 Javascript
vue仿ios列表左划删除
2019/09/26 Javascript
vue实现的封装全局filter并统一管理操作示例
2020/02/02 Javascript
JS算法教程之字符串去重与字符串反转
2020/12/15 Javascript
[47:42]Fnatic vs Liquid 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
Python魔术方法详解
2015/02/14 Python
Python3.6日志Logging模块简单用法示例
2018/06/14 Python
原来我一直安装 Python 库的姿势都不对呀
2019/11/11 Python
python数据预处理 :样本分布不均的解决(过采样和欠采样)
2020/02/29 Python
python新式类和经典类的区别实例分析
2020/03/23 Python
django admin管理工具自定义时间区间筛选器DateRangeFilter介绍
2020/05/19 Python
python下载的库包存放路径
2020/07/27 Python
Python爬虫入门教程02之笔趣阁小说爬取
2021/01/24 Python
基于html5 canvas实现漫天飞雪效果实例
2014/09/10 HTML / CSS
html5 初试 indexedDB(推荐)
2016/07/21 HTML / CSS
西班牙购买行李箱和背包网站:Maletas Greenwich
2019/10/08 全球购物
名词解释WEB SERVICE,SOAP,UDDI,WSDL,JAXP,JAXM;JSWDL开发包的介绍。
2012/10/27 面试题
计算s=f(f(-1.4))的值
2014/05/06 面试题
毕业生找工作的自我评价
2013/10/18 职场文书
兼职学生的自我评价
2013/11/24 职场文书
环保宣传标语
2014/06/12 职场文书
一次性工伤赔偿协议书范本
2014/11/25 职场文书
心灵点滴观后感
2015/06/02 职场文书
鸡毛信观后感
2015/06/11 职场文书
儿子满月酒致辞
2015/07/29 职场文书
mysql函数全面总结
2021/11/11 MySQL
「月刊Comic Alive」2022年5月号封面公开
2022/03/21 日漫
Python 避免字典和元组的多重嵌套问题
2022/07/15 Python