python 提取文件名
你可以用 os 或 pathlib 先拿到文件名,再用 split("_") 来拆分关键字。下面给你几个常见的写法:
方法一:使用 os.path
import os
file_path = "/home/user/data_2025_report.txt"
# 获取文件名(不带路径)
file_name = os.path.basename(file_path)
print("文件名:", file_name) # data_2025_report.txt
# 去掉扩展名
name_without_ext = os.path.splitext(file_name)[0]
print("去掉扩展名:", name_without_ext) # data_2025_report
# 用 '_' 分隔
keywords = name_without_ext.split("_")
print("关键字列表:", keywords) # ['data', '2025', 'report']
方法二:使用 pathlib(更现代的写法)
from pathlib import Path
file_path = Path("/home/user/data_2025_report.txt")
# 获取文件名(不带路径)
file_name = file_path.name
print("文件名:", file_name) # data_2025_report.txt
# 去掉扩展名
name_without_ext = file_path.stem
print("去掉扩展名:", name_without_ext) # data_2025_report
# 分隔关键字
keywords = name_without_ext.split("_")
print("关键字列表:", keywords) # ['data', '2025', 'report']
方法三:只提取某个位置的关键字
比如文件名是 project_2025_version1.txt,只想提取年份 2025:
from pathlib import Path
file_path = Path("project_2025_version1.txt")
keywords = file_path.stem.split("_")
year = keywords[1] # 第二个关键字
print(year) # 2025
⚡总结:
os.path.basename()/Path.name→ 拿文件名os.path.splitext()/Path.stem→ 去掉扩展名split("_")→ 拆关键字
要不要我帮你写一个通用函数,比如输入一个路径,返回去掉后缀的文件名关键字列表?

浙公网安备 33010602011771号