Python标准库pathlib操作目录和文件

作者:Python学习与数据挖掘 时间:2021-08-18 02:24:57 

学习 Python 时,尤其是在进行文件操作和数据处理时,经常会处理路径问题。最常用和常见的是 os.path 模块,它将路径当做字符串进行处理,如果使用不当可能导致难以察觉的错误,而且代码很难跨平台复用。pathlib 就是一个非常棒的Python标准库,超级好用。

pathlib模块提供了一种在 POSIX 系统(如 Linux 和 Windows)下运行良好的高级抽象,它抽象了资源路径和资源命名结构,把文件系统接口从os模块中隔离出来,将操作作为方法提供,使用更简单。

下面这张图,完美诠释pathlib的核心

Python标准库pathlib操作目录和文件

pathlib 基本组件


>>> from pathlib import Path
>>> path = Path(r'C:/Users/Miguel/projects/blog/config.tar.gz')
>>> path.drive
'C:'
>>> path.root
'/'
>>> path.root
'C:/'
>>> path.parent
WindowsPath('C:/Users/Miguel/projects/blog')
>>> path.name
'config.tar.gz'
>>> path.stem
'config.tar'
>>> path.suffix
'.gz'
>>> path.suffixes
['.tar', '.gz']

常用属性和基本方法

pathlib的常用属性


Path.parents  # 返回所有上级目录的列表
Path.parts  # 分割路径 类似os.path.split(), 不过返回元组
Path.suffix   # 返回文件后缀

pathlib的常用基本方法


Path.is_dir()  # 判断是否是目录
Path.is_file()  # 是否是文件
Path.exists()  # 判断路径是否存在
Path.open()  # 打开文件(支持with)
Path.resolve()  # 返回绝对路径
Path.cwd()  # 返回当前目录
Path.iterdir()  # 遍历目录的子目录或者文件
Path.mkdir()  # 创建目录
Path.rename()  # 重命名路径
Path.unlink()  # 删除文件或目录(目录非空触发异常)
Path.joinpath()  # 拼接路径

os and os.path VS pathlib

pathlib 可替代 os 和 os.path 的常用功能:

Python标准库pathlib操作目录和文件

来源:https://blog.csdn.net/weixin_38037405/article/details/121210157

标签:pathlib,库,目录文件,操作
0
投稿

猜你喜欢

  • 谈谈JavaScript中super(props)的重要性

    2024-04-30 09:56:11
  • Python设计模式之抽象工厂模式原理与用法详解

    2023-01-25 16:05:43
  • JSP 注释的详解及简单实例

    2023-07-21 06:15:35
  • React redux 原理及使用详解

    2023-07-14 15:41:58
  • Git在Windows中安装与使用教程

    2023-11-01 08:47:55
  • 关于Django框架的关系模型序列化和一对多关系中的序列化解析

    2023-01-15 00:52:53
  • Vue-Element-Admin前端接入SSO的方法步骤

    2023-07-02 16:57:19
  • python 统计list中各个元素出现的次数的几种方法

    2022-12-09 10:04:01
  • Python字典底层实现原理详解

    2021-04-09 12:58:28
  • asp如何制作一个小巧的购物车?

    2010-07-07 12:25:00
  • python 经纬度求两点距离、三点面积操作

    2021-05-16 17:48:17
  • Python实现PDF转换文本详解

    2022-09-04 13:40:52
  • 浅谈vue项目可以从哪些方面进行优化

    2024-05-09 15:19:50
  • Django 使用easy_thumbnails压缩上传的图片方法

    2023-11-10 07:47:38
  • 如何基于Python实现电子邮件的发送

    2022-03-16 11:49:16
  • Pytorch中.new()的作用详解

    2023-12-11 10:28:54
  • 用文本+ASP打造新闻发布系统

    2009-02-02 09:31:00
  • Python识别快递条形码及Tesseract-OCR使用详解

    2022-10-20 01:32:32
  • 通过java备份恢复mysql数据库的实现代码

    2024-01-25 23:44:58
  • python乱序字符串排序的实现方式

    2023-08-02 12:14:59
  • asp之家 网络编程 m.aspxhome.com