Python 从一个值到另一个值迭代dict

Python 从一个值到另一个值迭代dict,python,python-2.7,dictionary,iteration,Python,Python 2.7,Dictionary,Iteration,我有一本这样的字典: data = {1: [u'-', u's'], 2: [u'je', u'co', u'na'], ...} 关键是属于它的单词的长度。我想调用一个函数,该函数将计算比X长而比Y短的单词的levenshtein距离。我该如何做 主要问题是获取字典长度,因为len返回字典中的项数,而不是键 现在我是这样做的: for k in data: if k >= len(word)-distance and k <= len(word)+distance:

我有一本这样的字典:

data = {1: [u'-', u's'], 2: [u'je', u'co', u'na'], ...}
关键是属于它的单词的长度。我想调用一个函数,该函数将计算比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

data.keys将为您提供键,您可以对它们进行迭代。

您可以使用

sum((words for key, words in data.items() if X<key<Y), [])

你到底被卡在哪一部分?得到X和Y之间的钥匙?访问这些键的值?对这些列表中的所有项调用函数?请具体说明。这样你就可以开始了。发布你现在拥有的代码,你会得到更好的答案。我想通过更改数据中的for k来摆脱第一个if。对不起,我不清楚,请澄清你的帖子:什么是数据?这就是dict的例子吗?X和Y是什么?这是这本词典的钥匙吗?如果您询问如何在某些值之间获取dict的键,那么如果X代码缩进错误,您可以在数据中执行[k代表k]。此外,在Python中,您可以编写语句,就像lenword distance一样感谢您我在查看文档时一定错过了这一点。。。。