猿问

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

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

我想提取粗体部分。解决这个问题的方法是什么?

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

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


偶然的你
浏览 140回答 3
3回答

慕勒3428872

import osfilename = "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]

慕哥9229398

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

胡子哥哥

您可以拆分一个字符:filename.split('-')[1]会给你Tui Parakeet
随时随地看视频慕课网APP

相关分类

Python
我要回答