zoukankan      html  css  js  c++  java
  • 迭代dict的key和value

    我们了解了如何迭代 dictkeyvalue,那么,在一个 for 循环中,能否同时迭代 key和value?答案是肯定的。

    首先,我们看看 dict 对象的 items() 方法返回的值:

    >>> d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }
    >>> print d.items()
    [('Lisa', 85), ('Adam', 95), ('Bart', 59)]

    可以看到,items() 方法把dict对象转换成了包含tuple的list,我们对这个list进行迭代,可以同时获得key和value:

    >>> for key, value in d.items():
    ...     print key, ':', value
    ...
    Lisa : 85
    Adam : 95
    Bart : 59

    和 values() 有一个 itervalues() 类似, items() 也有一个对应的 iteritems(),iteritems() 不把dict转换成list,而是在迭代过程中不断给出 tuple,所以, iteritems() 不占用额外的内存。

    任务

    请根据dict:

    d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74 }

    打印出 name : score,最后再打印出平均分 average : score。

    ?不会了怎么办

    需要同时对 name 和 score 进行迭代。

    参考代码:

    d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74 }
    sum = 0.0
    for k, v in d.iteritems():
        sum = sum + v
        print k, ':', v
    print 'average', ':', sum / len(d)

     

    Lisa : 85
    Paul : 74
    Adam : 95
    Bart : 59
    average : 78.25

  • 相关阅读:
    web单机优化
    html标签
    html基础
    jenkins api
    cobbler api
    Cobbler安装配置简单使用
    ubuntu 12.04下搭建web服务器(MySQL+PHP+Apache) 教程
    在ubuntu12.04上安装6款顶级漂亮的BURG主题
    Setting up an OpenGL development environment in ubuntu
    c++ list 容器
  • 原文地址:https://www.cnblogs.com/quanweiru/p/8365506.html
Copyright © 2011-2022 走看看