Форум сайта python.su
Нужно вычленить общие слова из 2 текстов, при этом, если слова образуют фразу, нужно вычленить отдельно эту фразу. Т.е., из
a = 'the quick brown fox jumps over the lazy dog' b = 'the quick brown dog jumps over the lazy fox'
['the quick brown','fox','jumps over the lazy','dog']
>>> difflib.SequenceMatcher(a=a,b=b).get_matching_blocks() [Match(a=0, b=0, size=16), Match(a=17, b=17, size=1), Match(a=19, b=19, size=21), Match(a=41, b=41, size=1), Match(a=43, b=43, size=0)] >>> a[0:16] 'the quick brown ' >>> a[17:18] 'o' >>> a[19:40] ' jumps over the lazy ' >>> a[41:42] 'o'
>>> a = 'the quick brown fox jumps over the lazy dog' >>> b = 'jumps over the lazy dog the quick brown fox' >>> difflib.SequenceMatcher(a=a,b=b).get_matching_blocks() [Match(a=20, b=0, size=23), Match(a=43, b=43, size=0)] >>> a[20:43] 'jumps over the lazy dog'
['jumps over the lazy dog', 'the quick brown fox']
Отредактировано vanvanov (Ноя. 20, 2016 02:11:43)
Офлайн