假设我有一本字典:
{"a": 1, "b": 2, "h": 55 }
从“ b”键开始,有什么方法可以迭代字典吗?
字典没有顺序; 但是,如果您希望按字母顺序排序,则可以对键进行排序,然后跳过,直到使用以下命令获得'b'
键itertools.dropwhile()
:
from itertools import dropwhile
for key in dropwhile(lambda k: k != 'b', sorted(your_dictionary)):
演示:
>>> from itertools import dropwhile
>>> d = {"a": 1, "b": 2, "h": 55 }
>>> for key in dropwhile(lambda k: k != 'b', sorted(d)):
... print key, d[key]
...
b 2
h 55
即使您使用的是一个collections.OrderedDict()
对象(保留插入顺序),您仍然必须跳过这些键,直到获得“入门”键为止。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句