迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

在 Python 中获取文件扩展名

作者:迹忆客 最近更新:2023/12/21 浏览次数:

本教程将介绍如何在 Python 中从文件名中获取文件扩展名。


在 Python 中使用 os.path 模块从文件中提取扩展名

Python 的模块 os.path 预制了有用的实用函数来操作操作系统的文件路径,包括打开、保存和更新,以及从文件路径中获取信息。

我们将使用这个模块来获取 Python 中的文件扩展名。

os.path 有一个函数 splitext(),用来分割给定文件路径的根和扩展名。该函数返回一个包含根字符串和扩展字符串的元组。

让我们提供一个带有 docx 扩展名的文件路径示例。

/Users/user/Documents/sampledoc.docx

预期的输出应该是扩展名 .docx

声明两个独立的变量 extensionroot 来捕获 splitext() 的结果。

import os

path = "/Users/user/Documents/sampledoc.docx"
root, extension = os.path.splitext(path)

print("Root:", root)
print("extension:", extension)

输出:

Root: /Users/user/Documents/sampledoc
Extension: .docx

扩展名现在已经从根文件路径成功返回。


在 Python 中使用 pathlib 模块从文件中提取扩展名

pathlib 是一个 Python 模块,它包含代表文件路径的类,并为这些类实现实用函数和常量。

pathlib.Path() 接受一个路径字符串作为参数并返回一个新的 Path 对象。

pathlib.Path 对象有属性 suffix,返回文件扩展信息。

import pathlib

path = pathlib.Path("/Users/user/Documents/sampledoc.docx")

print("Parent:", path.parent)
print("Filename:", path.name)
print("Extension:", path.suffix)

除了根目录外,我们还可以通过简单调用 Path 对象内的属性 parentname 来获取给定文件路径的父文件路径和实际文件名。

输出:

Parent: /Users/user/Documents
Filename: sampledoc.docx
Extension: .docx

如果文件扩展名是 .tar.gz.tar.bz2 呢?

pathlib 还提供了一个属性,用于处理有多个后缀的文件。Path 对象中的属性 suffixes 是一个包含所有给定文件后缀的列表。如果我们使用上面的例子并打印出 suffixes 属性。

import pathlib

path = pathlib.Path("/Users/user/Documents/sampledoc.docx")

print("Suffix(es):", path.suffixes)

输出:

Suffix(es): ['.docx']

所以即使只有一个后缀,输出的结果也会是一个列表。

现在试试用 .tar.gz 扩展名的例子。要将列表转换为单字符串,可以在一个空字符串上使用 join() 函数,并接受 suffixes 属性作为参数。

import pathlib

path = pathlib.Path("/Users/user/Documents/app_sample.tar.gz")

print("Parent:", path.parent)
print("Filename:", path.name)
print("Extension:", "".join(path.suffixes))

输出:

Parent: /Users/user/Documents
Filename: app_sample.tar.gz
Extension: .tar.gz

现在显示的是实际的扩展名,而不是一个列表。

总之,ospathlib 这两个模块提供了在 Python 中从文件路径中获取文件扩展名的方便方法。

os 模块有一个函数 splitext,用于将根和文件名从文件扩展名中分离出来。pathlib 创建一个 Path 对象,并简单地将扩展名存储在 suffix 属性中。

如果你预计一个文件中有多个扩展名,最好使用 pathlib,因为它使用 suffixes 属性为多个扩展名提供了轻松的支持。

上一篇:在 Python 中读取文件的第一行

下一篇:没有了

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 Python 中读取文件的第一行

发布时间:2023/12/24 浏览次数:156 分类:Python

本教程演示了如何在 Python 中读取文本文件的第一行。在 Python 中,我们有内置的函数可以处理不同的文件操作。

在 Python 中读取二进制文件

发布时间:2023/12/24 浏览次数:175 分类:Python

本教程演示了如何在 Python 中读取二进制文件。程序或内部处理器对二进制文件进行解释。它包含字节作为内容。

用 Python 向文件写入字节

发布时间:2023/12/24 浏览次数:69 分类:Python

本教程演示了如何在 Python 中向二进制文件写入字节。本教程中,我们将介绍在 Python 中如何向二进制文件写入字节。

Python 从路径获取不带扩展名的文件名

发布时间:2023/12/24 浏览次数:55 分类:Python

本教程演示了如何在 Python 中从文件路径中获取不带扩展名的文件名。本教程将演示在 Python 中从文件路径中获取不带扩展名的文件名的各种方法。

在 Python 中创建一个不存在的文件

发布时间:2023/12/24 浏览次数:64 分类:Python

本教程演示了如何在 Python 中创建一个不存在的文件。本教程将解释如何在 Python 中创建一个不存在的文件的各种方法。

在 Python 中向文件写入字符串

发布时间:2023/12/24 浏览次数:92 分类:Python

有两种主要方法可用于在 Python 中将字符串写入文件,文件处理和上下文管理器。在本教程中,我们将讨论在 Python 中将字符串写入文件的方法。

在 Python 中替换文件中的一行

发布时间:2023/12/24 浏览次数:64 分类:Python

本教程讨论如何在 Python 中替换文件中的一行。文件处理被认为是任何 Web 应用程序的重要方面。与大多数编程语言类似,Python 完全能够支持文件处理。

将 Python 变量保存到文件

发布时间:2023/12/24 浏览次数:110 分类:Python

本教程讨论如何在 Python 中将变量保存到文件中。Python 完全有能力支持文件处理。它允许程序员处理不同类型的文件,执行读写等基本操作

在 Python 中从文件中删除特定行

发布时间:2023/12/24 浏览次数:183 分类:Python

本教程讨论如何在 Python 中从文件中删除特定行。Python 支持和允许数据文件处理,它构成了 Python 编程语言的重要组成部分。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便