dict_keys是生成器函数吗?

时间:2013-08-13 13:08:46

标签: python python-3.x dictionary generator

>>> d = {'m': 'mango', 'f': 'fish', 'a': 'apple'}
>>> d
{'m': 'mango', 'f': 'fish', 'a': 'apple'}
>>> d.keys()
dict_keys(['m', 'f', 'a'])
>>> for x in d.keys(): print(x)
m
f
a
>>> |

什么是dict_keys()以及如何在方法中覆盖它(__iter__的方式 被覆盖了?)

1 个答案:

答案 0 :(得分:2)

dict_keys()dictionary view object;这些对象是迭代器。

您可以从.keys()方法返回自己的此类对象实现。 dict.keys()返回的特定类型无法重复使用,您必须从头开始实现自己的类型。

我介绍了在previous answer创建自己的内容;有很多方法可以覆盖。