Path类 操作文件类的实例

Path类是Python中操作文件路径的工具类,可以用于文件路径相关的转换、拼接、判断、查询等操作。下面将详细讲解Path类的使用攻略,包括基本用法和进阶用法。

一、基本用法

  1. 导入Path类
from pathlib import Path
  1. 创建Path对象
# 在当前目录创建Path对象
p1 = Path('.')
# 在指定目录创建Path对象
p2 = Path('/usr/bin')
# 通过字符串创建Path对象
p3 = Path('/usr') / 'bin' / 'python'
  1. 基本属性
# 获取路径名
p3_name = p3.name  # 'python'
# 获取完整路径
p3_absolute = p3.absolute()
# 判断路径是否存在
p3_exists = p3.exists()
  1. 文件操作
# 创建一个文件
p4 = Path('test.txt')
p4.touch()
# 写入文件
p4.write_text('hello world')
# 读取文件
content = p4.read_text()
# 删除文件
p4.unlink()

二、进阶用法

  1. 遍历文件夹
p5 = Path('.')
# 遍历当前目录下的所有文件和文件夹
for file in p5.iterdir():
    print(file)
# 遍历当前目录下的所有Python文件
for py_file in p5.glob('*.py'):
    print(py_file)
  1. 操作路径
p6 = Path('/usr/bin/python')
# 获取上一级目录
p6_parent = p6.parent  # Path('/usr/bin')
# 获取文件后缀名
p6_suffix = p6.suffix  # '.py'
# 获取文件名(不含后缀)
p6_stem = p6.stem  # 'python'
# 添加新后缀
p7 = p6.with_suffix('.txt')  # Path('/usr/bin/python.txt')
# 在路径后添加子目录
p8 = p6 / 'scripts' / 'test.py'  # Path('/usr/bin/python/scripts/test.py')

三、示例说明

以下是两条示例说明:

示例一:遍历文件夹,并删除指定后缀名的文件

我们可以通过glob方法筛选出指定后缀名的文件,然后通过unlink方法删除。

p9 = Path('.')
# 遍历当前目录下的所有Markdown文件,并删除
for md_file in p9.glob('*.md'):
    md_file.unlink()

示例二:获取最近一次修改的文件名

通过遍历文件夹,获取所有文件最近一次修改的时间戳,然后通过max方法获取最近的时间戳,并返回文件名。

p10 = Path('.')
# 获取最近一次修改的文件名
latest_file = max(p10.glob('*'), key=lambda f: f.stat().st_mtime)
latest_filename = latest_file.name

以上就是Path类操作文件类的实例的完整攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Path类 操作文件类的实例 - Python技术站

(0)
上一篇 2023年6月1日
下一篇 2023年6月1日

相关文章

  • C# Linq的Single()方法 – 返回序列中的唯一元素

    C# Linq中Single()函数的完整攻略 Single()函数是C# Linq中的一个用于查询的函数,它返回一个序列中单个特定元素,如果序列包含多个元素,则会引发异常。这篇攻略会详细讲解Single()函数的用法,并提供一些示例来帮助读者理解。 语法 下面是Single()函数的语法: public static TSource Single<T…

    C# 2023年4月19日
    00
  • C#版Windows服务安装卸载小工具

    C#版Windows服务安装卸载小工具是一种方便的工具,可以用于安装、卸载和管理Windows服务。以下是使用C#实现Windows服务安装卸载小工具的完整攻略。 环境准备 在使用C#实现Windows服务安装卸载小工具前,需要确保以下环境已经准备好: Visual Studio已经安装并配置好了环境变量。 项目中已经添加了引入的包的依赖。 实现Window…

    C# 2023年5月15日
    00
  • C#将html table 导出成excel实例

    下面是关于“C#将html table 导出成excel实例”的完整攻略。 1. 环境准备 在使用C#将HTML表格导出为Excel之前,需要确保安装并引用以下两个库: EPPlus :一个用于创建和读取Excel的开源库,可在 Nuget 上查找和安装。 HtmlAgilityPack: 一个用于处理HTML文档的开源库,可在 Nuget 上查找和安装。 …

    C# 2023年6月2日
    00
  • .net core日志结构化

    .NET Core日志结构化攻略 在.NET Core中,日志是一种重要的调试和故障排除工具。日志结构化是一种将日志消息转换为结构化数据的技术,可以提高日志的可读性和可搜索性。本攻略将介绍如何在.NET Core中实现日志结构化,并提供两个示例说明。 实现日志结构化 在.NET Core中,我们可以使用以下类来实现日志结构化: 1. ILogger ILog…

    C# 2023年5月17日
    00
  • C#实现利用泛型将DataSet转为Model的方法

    下面是详细的讲解。 1. 确定需求 在实现将DataSet转为Model的方法前,需要先明确需求。本次需求是将DataSet中的数据转换为Model类型并返回。 2. 准备数据 假设我们有一个Student的类型,定义如下: public class Student { public int Id { get; set; } public string Na…

    C# 2023年6月3日
    00
  • Windows下Visual Studio 2017安装配置方法图文教程

    Windows下Visual Studio 2017安装配置方法图文教程 简介 Visual Studio 2017是微软推出的一款开发工具套件,包含多种编程语言支持,如C++、C#、Java、Python等。本文将介绍Windows下Visual Studio 2017的安装配置方法。 步骤 1. 下载Visual Studio 2017 首先需要前往微软…

    C# 2023年6月3日
    00
  • 在win7中chm打不开的多种解决方法

    当在win7中尝试打开CHM文件时,有时会遇到无法打开的情况。这种情况一般由于系统权限和安全策略等问题所致。下面是几种解决办法: 方法一:修改注册表 打开注册表编辑器(regedit)。 找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\ItssRestrictions键值。 如果该键值不存在,则需要手…

    C# 2023年6月7日
    00
  • 记录.Net部署Docker-v指令使用

    记录Docker的-v指令使用 前言 之前我浅学了一下docker,方便部署.net项目(部署的是打包之后的项目) dockerfile文件如下: FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base WORKDIR /app EXPOSE 5031 EXPOSE 7031 FROM mcr.microsoft.c…

    C# 2023年4月25日
    00
合作推广
合作推广
分享本页
返回顶部