Python3 字典 keys() 方法返回一个视图对象。
dict.keys()、dict.values() 和 dict.items() 返回的都是视图对象( view objects),提供了字典实体的动态视图,这就意味着字典改变,视图也会跟着变化。
视图对象不是列表,不支持索引,可以使用 list() 来转换为列表。
我们不能对视图对象进行任何的修改,因为字典的视图对象都是只读的。
注意:Python2.x 是直接返回列表
keys()方法语法:
dict.keys()
返回一个视图对象。
以下实例展示了 keys() 方法的使用方法:
dishes = {'eggs': 2, 'sausage': 1, 'bacon': 1, 'spam': 500} keys = dishes.keys() values = dishes.values() # 迭代 n = 0 for val in values: ... n += val print(n) 504 # keys 和 values 以相同顺序(插入顺序)进行迭代 list(keys) # 使用 list() 转换为列表 ['eggs', 'sausage', 'bacon', 'spam'] list(values) [2, 1, 1, 500] # 视图对象是动态的,受字典变化的影响,以下删除了字典的 key,视图对象转为列表后也跟着变化 del dishes['eggs'] del dishes['sausage'] list(keys) ['bacon', 'spam']