在Python中从文件路径中提取不带扩展名的文件名 – 码微 您所在的位置:网站首页 文件名包不包括扩展名 在Python中从文件路径中提取不带扩展名的文件名 – 码微

在Python中从文件路径中提取不带扩展名的文件名 – 码微

2024-07-13 04:39| 来源: 网络整理| 查看: 265

在 Python 中处理文件时,通常需要操作文件名和扩展名来执行各种任务,例如重命名或处理文件。但是,从给定路径中提取不带扩展名的文件名可能会很棘手。幸运的是,Python 提供了一种简单的方法来使用该os.path模块以及下面实现的其他各种方法来实现此目的。在本文中,我们将通过一个简单的示例和分步说明,探讨如何使用 Python 从路径中获取不带扩展名的文件名。

在Python中实现不带扩展名的文件名提取

要从 Python 中的路径中提取不带扩展名的文件名,可以使用各种技术。其中一些包括使用 str.rsplit() 方法、pathlib.Path() 对象、os.path.split() 和 os.path.splitext() 函数、os.path.basename() 和 os.path.splitext( ) 函数、re 模块和 str.partition() 方法。每种方法都提供了略有不同的方法来实现所需的结果。

让我们开始吧!

示例 1:使用“str.rsplit()”方法提取文件名

在此方法中,我们使用 str.rsplit() 方法,将路径拆分为目录路径和带扩展名的文件名。然后,我们使用 str.rsplit() 方法再次分割文件名部分,以仅获取不带扩展名的文件名。

path =  "Path"  #Add the file path here filename = path.rsplit('/', 1)[-1].rsplit('.', 1)[0] print("Filename:",filename)

此代码使用该str.rsplit()方法将路径拆分为两个路径,首先是目录路径,其次是带扩展名的文件名。然后使用该方法再次拆分文件名部分,以仅str.rsplit()获取不带扩展名的文件名。输入您的文件路径,path然后输入data打印文件名。

输出:

示例 2:利用“pathlib.Path()”对象进行文件名提取

使用 pathlib.Path() 对象,我们从给定路径创建一个 Path 对象。Path 对象的 Stem 属性提供不带扩展名的文件名。

from pathlib import Path   path =  "Path"  #Add the file path here filename = Path(path).stem print("Filename:",filename)

此方法使用该pathlib.Path()对象从给定路径创建路径对象。要获取不带扩展名的文件名,它使用stem路径对象的属性。输入您的文件路径,path稍后data将打印文件名。

输出:

示例 3:实现 ‘os.path.split()’ 和 ‘os.path.splitext()’ 函数

os.path.split() 函数将路径拆分为目录路径和带扩展名的文件名。随后, os.path.splitext() 函数分隔文件名和扩展名部分。

import os   path =  "Path"  #Add the file path here filename = os.path.splitext(os.path.split(path)[1])[0] print("Filename:",filename)

导入os模块后,我们定义os.path.split()用于将路径拆分为多个部分的函数 – 目录路径和带扩展名的文件名。为了将文件名部分拆分为文件名和扩展名部分,我们定义了os.path.splittext()函数。输入您的文件路径,path稍后data将打印文件名。

输出:

示例 4:使用 ‘os.path.basename()’ 和 ‘os.path.splitext()’ 函数

我们应用 os.path.basename() 函数从路径中获取基本文件名,然后使用 os.path.splitext() 将文件名拆分为单独的部分。

import os   path =  "Path"  #Add the file path here filename = os.path.splitext(os.path.basename(path))[0] print("Filename:",filename)

在此方法中,我们使用该os.path.basename()函数从路径中获取基本文件名。然后将文件名拆分为文件名和扩展名部分。输入您的文件路径,path稍后data将打印文件名。

输出:

示例 5:使用“re”模块应用正则表达式

正则表达式允许提取不带扩展名的文件名。特定的正则表达式模式和 re.search() 函数提供了一个匹配对象,我们使用 group(0) 方法从中提取所需的字符串。

import re   path =  "Path"  #Add the file path here filename = re.search(r'[^/\\]+(?=\.\w+$)', path).group(0) print("Filename:",filename)

此方法使用正则表达式从路径中提取不带扩展名的文件名。正则表达式r'[^/\\]+(?=\.\w+$)'匹配不包含正斜杠或反斜杠且紧跟在字符串末尾的一个点和一个或多个单词字符的任何字符序列。该函数返回一个匹配对象,我们从中re.search()提取使用该方法匹配的字符串group(0)。输入您的文件路径,path稍后data将打印文件名。

输出:

示例 6:使用 ‘str.partition()’ 方法获取文件名

使用 str.partition() 函数,路径被分为三部分:目录路径、不带扩展名的文件名和扩展名。我们专注于第二部分来获取文件名。

path =  "Path"  #Add the file path here filename = path.rpartition('/')[2].rpartition('.')[0] print("Filename:",filename)

我们利用str.partition()函数将路径分成三部分,第一部分是目录路径,第二部分是不带扩展名的文件名,第三部分是扩展名。我们只关注第二部分,即文件名,输入您的文件路径,path然后data打印文件名。

输出:

概括

从 Python 中的路径中提取不带扩展名的文件名是文件操作中的常见任务。通过利用 os.path 模块,可以轻松高效地完成此任务。在本文中,我们探索了一个简单的示例和分步说明,了解如何使用 Python 获取不带扩展名的文件名。有了这个,我们现在可以将该技术应用到我们自己的文件处理任务中。

浏览更多有趣的主题,例如:

阅读,在 Matplotlib 图中使用 Pandas 数据框索引作为 X 轴 阅读如何检查双端队列是否为空?


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有