我有一個類似模式的文件名:“XC47566 - Tui Parakeet - Brotogeris sanctithomae .wav”我想提取粗體部分。解決這個問題的方法是什么?澄清:大多數文件都有這種模式:XC##### - 鳥類名稱 - 鳥類種類。然而,有些文件有帶連字符的單詞,例如:XC22087 - Silky-tailed Nightjar - Antrostomus sericocaudatus謝謝大家的幫助。我不太熟悉使用文件擴展名,所以我真的很感激
3 回答

慕勒3428872
TA貢獻1848條經驗 獲得超6個贊
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]

慕哥9229398
TA貢獻1877條經驗 獲得超6個贊
嘗試這個:
middle_name = "XC47566 - Tui Parakeet - Brotogeris sanctithomae.wav"[10:-4]
添加回答
舉報
0/150
提交
取消