如何在python中提取文件名的中间部分?

2024-05-15 06:06:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个类似模式的文件名,如下所示: “XC47566-长尾小鹦鹉-长尾小鹦鹉.wav”

我想提取粗体部分。这件事怎么办

澄清: 大多数文件都有这样的模式:XC#####-Bird name-Bird species。然而,一些文件中使用了连字号,如:XC22087-丝尾夜鹰-丝状口吸虫

谢谢大家的帮助。我对使用文件扩展名不太熟悉,所以我非常感激


Tags: 文件name文件名模式specieswav鹦鹉丝状
3条回答
import os

filename = "XC47566 - Tui Parakeet - Brotogeris sanctithomae.wav"

os.path.splitext(filename)[0].split("-", 1)[1].strip()

给你"Tui Parakeet - Brotogeris sanctithomae"

我添加了strip(),因为我假设您对前导/尾随空格不感兴趣

如果您想将Bird name和Bird species拆分为单独的变量,并且可以确保它们都不包含" - "(一个空格后跟一个破折号后跟一个空格),那么您可以这样做

bird_name, bird_species = os.path.splitext(filename)[0].split(" - ")[1:3]

您可以在一个字符上拆分:

filename.split('-')[1]

将给您Tui Parakeet

试试这个:

middle_name = "XC47566 - Tui Parakeet - Brotogeris sanctithomae.wav"[10:-4]

相关问题 更多 >

    热门问题