Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def sound_distance(self, word1, word2):
- """Фонетическое растояние на основе расстояния Левенштейна по окончаниям
- (число несовпадающих символов на соответствующих позициях)"""
- accent1 = self.accent_syllable(word1)
- accent2 = self.accent_syllable(word2)
- wov1=[i for i in range(len(word1)) if word1[i] in self.vowels][accent1-1]
- wov2=[i for i in range(len(word2)) if word2[i] in self.vowels][accent2-1]
- accent2 = self.accent_syllable(word2)
- if wov1>0:
- suffix1 = word1[wov1-1:wov1+2]
- else:
- suffix1 = word1[wov1:wov1+3]
- if wov2>0:
- suffix2= word2[wov2-1:wov2+2]
- else:
- suffix2= word2[wov2:wov2+3]
- distance = sum((ch1 != ch2) for ch1, ch2 in zip(suffix1, suffix2))
- return distance
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement