什么是Python字典视图对象?

字典方法items()keys()values()返回视图对象。该items()方法返回一个dict_items对象,该对象包含字典中的键值对列表

>>> D1={"pen":25, "pencil":10, "book":100, "sharpner":5, "eraser":5}
>>> i=D1.items()
>>> i
dict_items([('pen', 25), ('pencil', 10), ('book', 100), ('sharpner', 5), ('eraser', 5)])

keys()方法返回dict_keys类型的视图对象,该视图对象包含所有键的列表

>>> k=D1.keys()
>>> k
dict_keys(['pen', 'pencil', 'book', 'sharpner', 'eraser'])

同样,values()方法返回dict_values对象

>>> v=D1.values()
>>> v
dict_values([25, 10, 100, 5, 5])

这些视图对象是动态更新的。在基础字典中的更改会反映在视图中。例如,如果从字典中删除了“ book”键,则相应的视图对象也将不显示相关条目。

>>> del D1['book']
>>> k
dict_keys(['pen', 'pencil', 'sharpner', 'eraser'])
>>> i
dict_items([('pen', 25), ('pencil', 10), ('sharpner', 5), ('eraser', 5)])
>>> v
dict_values([25, 10, 5, 5])