Python 获取路径中的文件名

Python 获取路径中的文件名

Python 获取路径中的文件名

简介

在编程中,经常需要处理文件路径。路径不仅包含目录信息,还包含文件名信息。在Python中,我们可以使用不同的方法获取路径中的文件名。本文将详细介绍几种常用的方法,并给出相应的示例代码。

方法一:使用os模块

Python的os模块提供了丰富的方法来处理文件和目录。其中,os.path模块中的函数可以用于处理路径中的文件名。

使用os.path模块的split()函数

split()函数可以将路径分割为目录部分和文件名部分,返回一个元组。示例代码如下:

import os

path = '/Users/username/Documents/example.txt'
dirname, filename = os.path.split(path)

print('目录名:', dirname)
print('文件名:', filename)

输出为:

目录名: /Users/username/Documents
文件名: example.txt

使用os.path模块的basename()函数

basename()函数可以直接提取路径中的文件名部分,返回一个字符串。示例代码如下:

import os

path = '/Users/username/Documents/example.txt'
filename = os.path.basename(path)

print('文件名:', filename)

输出为:

文件名: example.txt

方法二:使用pathlib模块

Python 3.4版本开始,标准库中引入了pathlib模块,该模块提供了一种面向对象的处理路径的方式。

使用pathlib.Path对象的name属性

Path对象的name属性可以直接获取路径中的文件名部分,返回一个字符串。示例代码如下:

from pathlib import Path

path = Path('/Users/username/Documents/example.txt')
filename = path.name

print('文件名:', filename)

输出为:

文件名: example.txt

方法三:使用re模块

re模块是Python中用于正则表达式操作的模块,我们可以使用正则表达式来提取路径中的文件名部分。

使用正则表达式提取文件名

下面的示例代码展示了如何使用正则表达式提取路径中的文件名部分:

import re

path = '/Users/username/Documents/example.txt'
filename = re.search(r'[^\\/]+$', path).group()

print('文件名:', filename)

输出为:

文件名: example.txt

方法四:使用字符串操作

我们还可以使用字符串的操作函数来获取路径中的文件名部分。

使用str.rsplit()函数

rsplit()函数可以将字符串从右边开始分割为多个部分,并返回一个列表。我们可以通过指定分隔符为路径分隔符,然后取列表的最后一个元素来获取文件名。示例代码如下:

path = '/Users/username/Documents/example.txt'
filename = path.rsplit('/', 1)[-1]

print('文件名:', filename)

输出为:

文件名: example.txt

方法五:使用第三方库

除了Python标准库提供的方法,还可以使用一些第三方库来获取路径中的文件名。其中,最常用的是path类库。下面是使用path库的示例代码:

from path import Path

path = Path('/Users/username/Documents/example.txt')
filename = path.name

print('文件名:', filename)

输出为:

文件名: example.txt

需要注意的是,使用第三方库需要提前安装好相应的库。

总结

本文介绍了几种常用的方法来获取Python中路径中的文件名。通过使用os.path模块、pathlib模块、正则表达式、字符串操作、第三方库等多种方式,我们可以根据实际需要选择合适的方法来获取文件名部分。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程