Python 获取文件名

Python 获取文件名

Python 获取文件名

在日常的文件操作中,我们经常需要获取文件的名称,用于展示、处理或存储。Python 提供了多种方法来获取文件名,本文将详细介绍这些方法,并给出相应的示例代码。

1. 使用 os 模块

Pythonos 模块提供了许多用于文件操作的函数。其中,os.path 模块下的函数可以用于获取文件名。

1.1. 使用 os.path.basename()

os.path.basename() 函数可以获取文件路径中的文件名部分。例如,对于路径 ‘/path/to/file.txt’,函数将返回 ‘file.txt’。

下面是一个示例代码:

import os

file_path = '/path/to/file.txt'
file_name = os.path.basename(file_path)

print(file_name)

输出为:

file.txt

1.2. 使用 os.path.splitext()

os.path.splitext() 函数可以将文件路径分割为根路径和扩展名两部分。例如,对于路径 ‘/path/to/file.txt’,函数将返回 (‘/path/to/file’, ‘.txt’)。

下面是一个示例代码:

import os

file_path = '/path/to/file.txt'
file_root, file_ext = os.path.splitext(file_path)

print(file_root)
print(file_ext)

输出为:

/path/to/file
.txt

2. 使用 Path 对象

Python 3.4 引入了 pathlib 模块,其中的 Path 类提供了一种更现代化和面向对象的方式来进行文件路径操作。

2.1. 使用 Path.name 属性

Path 对象的 name 属性返回文件的名称部分。例如,对于路径 ‘/path/to/file.txt’,属性值将为 ‘file.txt’。

下面是一个示例代码:

from pathlib import Path

file_path = Path('/path/to/file.txt')
file_name = file_path.name

print(file_name)

输出为:

file.txt

2.2. 使用 Path.stem 属性和 Path.suffix 属性

Path 对象的 stem 属性返回文件的根部分,suffix 属性返回文件的扩展名部分。例如,对于路径 ‘/path/to/file.txt’,stem 属性值为 ‘file’,suffix 属性值为 ‘.txt’。

下面是一个示例代码:

from pathlib import Path

file_path = Path('/path/to/file.txt')
file_root = file_path.stem
file_ext = file_path.suffix

print(file_root)
print(file_ext)

输出为:

file
.txt

3. 使用正则表达式

如果对文件名的匹配有特定需求,可以使用正则表达式来进行文件名的提取。

下面是一个示例代码,通过正则表达式提取文件名中的数字部分:

import re

file_name = 'file_123.txt'
match = re.search(r'\d+', file_name)
if match:
    number = match.group()
    print(number)
else:
    print('No match found.')

输出为:

123

总结

本文介绍了 Python 中获取文件名的多种方法。使用 os.path 模块可以轻松地获取文件名、根路径和扩展名;而使用 Path 对象可以更方便地进行文件路径操作;通过正则表达式可以根据特定需求提取文件名的部分信息。根据具体的需求和习惯,选择适合自己的方法即可。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程