字典视图对象

        通过dict.viewkkeys(),dict.viewvalues()以及dict.viewitems()的对象称之为视图对象。它们提供了字典对象的一个动态视图,也就是说当字典中内容改变的时候,视图也跟着改变。

        字典视图对象可以迭代获取其中的数据。
        len(dictview)
        返回字典视图的大小。
        iter(dictview)
        返回字典中keys,values或者items的迭代对象。
        x  in dictview
        如果x在字典的keys、values或者items中时 返回True。
        &、|、-、^分别执行交、并、差、异或操作。
        下面是一个简单的例子。
  1. >>> dishes ={'eggs':2,'sausage':1,'bacon':1,'spam':500}
    >>> keys = dishes.viewkeys()
    >>> values = dishes.viewvalues()
    >>># iteration
    >>> n =0
    >>>for val in values:
    ... n += val
    >>>print(n)
    504
    >>># keys and values are iterated over in the same order
    >>> list(keys)
    ['eggs','bacon','sausage','spam']
    >>> list(values)
    [2,1,1,500]
    >>># view objects are dynamic and reflect dict changes
    >>>del dishes['eggs']
    >>>del dishes['sausage']
    >>> list(keys)
    ['spam','bacon']
    >>># set operations
    >>> keys &{'eggs','bacon','salad'}
    {'bacon'}
posted @ 2015-10-11 10:08  楚狂人阿飞  阅读(433)  评论(0编辑  收藏  举报