我有
target = "dexter.new.blood.S01EP07.somerandomstring.mkv"
我設法僅使用名字split('.')
為
target = "dexternewblood"
和
list = ['Dexter - Eighth Season (2013)', 'Dexter - Seventh Season (2012)', 'Dexter - Fourth Season (2009)', 'Dexter - Third Season (2008)', 'Dexter - Sixth Season (2011)', 'Dexter - Fifth Season (2010)', 'Dexter: New Blood - First Season (2021)', 'Dexter - First Season (2006)', 'Dexter - Second Season (2007)']
我做了同樣的事情最終得到:
list = ['Dexter ', 'Dexter ', 'Dexter ', 'Dexter ', 'Dexter ', 'Dexter ', 'Dexter: New Blood ', 'Dexter ', 'Dexter ']
如果您還可以添加獲取索引的方法,我想獲得最佳匹配,即“德克斯特:新血”
uj5u.com熱心網友回復:
從這個類似的帖子,你可以使用SequenceMatcher從difflib內置模塊:
from difflib import SequenceMatcher
target = "dexternewblood"
lst = ['Dexter ', 'Dexter ', 'Dexter ', 'Dexter ', 'Dexter ', 'Dexter ', 'Dexter: New Blood ', 'Dexter ', 'Dexter ']
a = [SequenceMatcher(None, i, target).ratio() for i in lst]
index = a.index(max(a)) # 6
match = lst[index] # 'Dexter: New Blood '
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/396531.html
