python 提取文件名

你可以用 ospathlib 先拿到文件名,再用 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("_") → 拆关键字

要不要我帮你写一个通用函数,比如输入一个路径,返回去掉后缀的文件名关键字列表?

posted @ 2025-09-03 12:50  X1OO  阅读(51)  评论(0)    收藏  举报