我有这样的字典:
data = {1: [u'-', u's'], 2: [u'je', u'co', u'na'], ...}
KEY是属于它的单词的长度。对于长于X且比Y短的单词,我想调用一个函数(将计算levenshtein距离)。我该怎么做?
主要问题是获取字典长度,因为len()返回字典中的项目数,而不是键。
现在我这样做:
for k in data:
if k >= len(word)-distance and k <= len(word)+distance:
for item in data[k]:
if levenshtein(word, item) == distance:
words.append(item)
return words
答案 0 :(得分:0)
data.keys()将为您提供密钥,您可以迭代它们。
答案 1 :(得分:0)
您可以使用
获取长度介于X和Y之间的所有单词的列表sum((words for key, words in data.items() if X<key<Y), [])