繁体   English   中英

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

[英]How to extract the middle part of a filename in python?

我有一个类似模式的文件名:“XC47566 - Tui Parakeet - Brotogeris sanctithomae .wav”

我想提取粗体部分。 go 的方法是什么?

澄清:大多数文件都有这种模式:XC##### - 鸟类名称 - 鸟类种类。 但是,有些文件带有连字符,例如:XC22087 - Silky-tailed Nightjar - Antrostomus sericocaudatus

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

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]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM