Python 中提取文件名而不包含后缀名

在 Python 中处理文件时,经常需要获取文件名的不带后缀版本,也称为文件名根。本文提供了多种方法来实现这一目标。

 Python 中提取文件名而不包含后缀名 Python 中提取文件名而不包含后缀名


Python 中提取文件名而不包含后缀名


使用 os.path.splitext()

os.path.splitext() 函数将文件路径拆分为文件名和后缀两部分。要获取不带后缀的文件名,我们可以使用以下代码:

```python import os.path

filename = "myfile.txt" filename_without_ext = os.path.splitext(filename)[0] print(filename_without_ext) 输出:myfile ```

使用 os.path.basename() 和 os.path.splitext()

os.path.basename() 函数返回文件路径的一部分,即文件名,而 os.path.splitext() 函数用于去除后缀。我们可以将这两个函数结合使用:

```python import os.path

filename = "path/to/myfile.txt" filename_without_ext = os.path.splitext(os.path.basename(filename))[0] print(filename_without_ext) 输出:myfile ```

使用字符串切片

如果我们知道文件路径的格式,我们可以使用字符串切片来提取文件名而不带后缀。例如,对于上述文件名,我们可以使用以下代码:

```python filename = "path/to/myfile.txt" filename_without_ext = filename[:filename.rfind(".")] print(filename_without_ext) 输出:myfile ```

使用正则表达式

正则表达式提供了一种处理文本的强大方法。我们可以使用正则表达式匹配文件名,然后使用分组提取不带后缀的部分。

```python import re

filename = "path/to/myfile.txt" pattern = r'(.).(.)' match = re.match(pattern, filename) filename_without_ext = match.group(1) print(filename_without_ext) 输出:myfile ```

注意事项

版权声明:图片、内容均来源于互联网 如有侵权联系836084111@qq.com 删除