• python学习笔记整理——dictView [未整理]


    Dictionary view objects简介

    The objects returned by dict.viewkeys(), dict.viewvalues() and dict.viewitems() are view ob-
    jects. They provide a dynamic view on the dictionary’s entries, which means that when the dictionary changes, the
    view reflects these changes.
    Dictionary views can be iterated over to yield their respective data, and support membership tests:

    len(dictview)

    Return the number of entries in the dictionary.

    iter(dictview)

    Return an iterator over the keys, values or items (represented as tuples of (key, value)) in the dictionary.
    Keys and values are iterated over in an arbitrary order which is non-random, varies across Python implementa-
    tions, and depends on the dictionary’s history of insertions and deletions. If keys, values and items views are
    iterated over with no intervening modifications to the dictionary, the order of items will directly correspond. This
    allows the creation of (value, key) pairs using zip(): pairs = zip(d.values(), d.keys()).
    Another way to create the same list is pairs = [(v, k) for (k, v) in d.items()].
    Iterating views while adding or deleting entries in the dictionary may raise a RuntimeError or fail to iterate
    over all entries.

    x in dictview

    Return True if x is in the underlying dictionary’s keys, values or items (in the latter case, x should be a (key,
    value) tuple).
    Keys views are set-like since their entries are unique and hashable. If all values are hashable, so that (key, value) pairs
    are unique and hashable, then the items view is also set-like. (Values views are not treated as set-like since the entries
    are generally not unique.) Then these set operations are available (“other” refers either to another view or a set):

    dictview & other

    Return the intersection of the dictview and the other object as a new set.

    dictview | other

    Return the union of the dictview and the other object as a new set.

    dictview - other

    Return the difference between the dictview and the other object (all elements in dictview that aren’t in other) as
    a new set.

    dictview ^ other

    Return the symmetric difference (all elements either in dictview or other, but not in both) of the dictview and
    the other object as a new set.

    An example of dictionary view usage:

              >>> 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'}
  • 相关阅读:
    Vue3.0版本以上路由跳转控制台报错调整
    vue-cli3.0 项目如何使用sass less
    vue-element-admin项目npm install 安装不成功问题
    封装axios
    element ui判断是否必填添加校验
    element ui上传图片限制尺寸(宽、高、)大小、格式等
    阿里云服务器挂载新数据盘
    GitHub上最火的40个Android开源项目
    设计模式——设计原则
    设计模式——策略模式
  • 原文地址:https://www.cnblogs.com/learn-to-rock/p/5315116.html
Copyright © 2020-2023  润新知