本文实例讲述了Python查找相似单词的方法。分享给大家供大家参考。具体分析如下:
问题:
给你一个单词a,如果通过交换单词中字母的顺序可以得到另外的单词b,那么定义b是a的兄弟单词。现在给你一个字典,用户输入一个单词,让你根据字典找出这个单词有多少个兄弟单词。
Python代码如下:
from itertools import tee,izip
from collections import defaultdict
def pairwise(iterable):
a, b = tee(iterable)
for elem in b:
break
return izip(a, b)
buf_array=[]
buf_no={}
key_from_id=0
def add_to_buf(word):
global key_from_id,buf_array
if len(word)==1:
pass
#TODO
for pos,pair in enumerate(pairwise(word)):
if len(buf_array)
buf_array.append(defaultdict(set))
pos_dict=buf_array[pos]
key=list(pair)
key.sort()
key="".join(key)
if key not in buf_no:
buf_no[key]=key_from_id