Python 获取文件名

Python 获取文件名

Python 获取文件名

在处理文件操作的过程中,经常需要获取文件的名称。Python 提供了多种方法来获取文件名,包括获取文件的完整路径以及不包含路径的纯文件名。本文将介绍几种常用的方法,并给出相应的示例代码。

一、获取文件的完整路径

获取文件的完整路径,即包含文件路径的文件名。在绝大多数情况下,我们都需要获取文件的完整路径来进行进一步的处理。Python 提供了 os 模块来实现这个功能。

下面是一个获取文件完整路径的示例代码:

import os

# 获取当前文件的完整路径
cur_path = os.path.realpath(__file__)
print("当前文件路径:", cur_path)

# 获取当前文件所在的目录路径
cur_dir = os.path.dirname(cur_path)
print("当前文件目录路径:", cur_dir)

# 获取当前文件的文件名
cur_file_name = os.path.basename(cur_path)
print("当前文件名:", cur_file_name)
Python

代码运行结果:

当前文件路径: D:/example.py
当前文件目录路径: D:/
当前文件名: example.py
Python

以上示例代码中,首先导入了 os 模块。然后使用 os.path.realpath(__file__) 函数获取当前文件的完整路径。接着使用 os.path.dirname() 函数获取当前文件所在的目录路径,即去掉文件名的部分。最后使用 os.path.basename() 函数获取当前文件的文件名,即只保留文件名的部分。

需要注意的是,os.path.realpath() 函数可以解析出符号链接的真实路径。如果不需要解析符号链接,可以使用 os.path.abspath() 函数代替。

二、获取文件的纯文件名

获取文件的纯文件名,即不包含文件路径的部分。有时候我们只对文件名本身感兴趣,不需要路径信息,这时可以使用 os.path 模块提供的另一个函数。

下面是一个获取文件纯文件名的示例代码:

import os

# 获取当前文件的文件名
cur_file_name = os.path.basename(__file__)
print("当前文件名:", cur_file_name)

# 切割文件名和文件后缀
name, ext = os.path.splitext(cur_file_name)
print("纯文件名:", name)
Python

代码运行结果:

当前文件名: example.py
纯文件名: example
Python

以上示例代码中,首先使用 os.path.basename(__file__) 函数获取当前文件的文件名。接着使用 os.path.splitext() 函数切割文件名和文件后缀,返回一个包含文件名和文件后缀的元组。通过取元组的第一个元素,即可获得纯文件名。

需要注意的是,os.path.splitext() 函数可以同时获取文件的后缀名,包括点号。如果只需要纯文件名,可以通过字符串的操作进行截取。

三、获取文件的扩展名

获取文件的扩展名,即文件名中最后一个点号后的部分。在某些情况下,我们只关心文件的扩展名,希望能够提取出来。在 Python 中,可以使用 os.path 模块提供的函数来实现。

下面是一个获取文件扩展名的示例代码:

import os

# 获取当前文件的文件名
cur_file_name = os.path.basename(__file__)
print("当前文件名:", cur_file_name)

# 获取文件的扩展名
ext = os.path.splitext(cur_file_name)[-1]
print("文件扩展名:", ext)
Python

代码运行结果:

当前文件名: example.py
文件扩展名: .py
Python

以上示例代码中,首先使用 os.path.basename(__file__) 函数获取当前文件的文件名。接着使用 os.path.splitext() 函数切割文件名和文件后缀,返回一个包含文件名和文件后缀的元组。通过取元组的第二个元素,即可获得文件的扩展名。

需要注意的是,os.path.splitext() 函数返回的扩展名包括点号,如果只需要去掉点号的扩展名,可以使用字符串的操作进行截取。

四、总结

本文介绍了在 Python 中获取文件名的几种常用方法,包括获取文件的完整路径、纯文件名以及文件的扩展名。os.path 模块提供了相关的函数,通过这些函数可以方便地获取文件名的不同部分。在实际应用中,根据具体的需求选择合适的方法即可。

在编写代码时,建议使用 os.path 模块提供的函数,而不是手动进行字符串截取等操作。这样可以提高代码的可读性和可维护性,避免出现潜在的错误。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程