Python values()与itervalues()的用法详解

 更新时间:2019年11月27日 15:19:13   作者:majinbo111  
今天小编就为大家分享一篇Python values()与itervalues()的用法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

dict 对象有一个 values() 方法,这个方法把dict转换成一个包含所有value的list,这样,我们迭代的就是 dict的每一个 value:

d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }
print d.values()
# [85, 95, 59]
for v in d.values():
  print v
# 85
# 95
# 59

如果仔细阅读Python的文档,还可以发现,dict除了values()方法外,还有一个 itervalues() 方法,用 itervalues() 方法替代 values() 方法,迭代效果完全一样:

d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }
print d.itervalues()
# <dictionary-valueiterator object at 0x106adbb50>
for v in d.itervalues():
  print v
# 85
# 95
# 59

那这两个方法有何不同之处呢?

1. values() 方法实际上把一个 dict 转换成了包含 value 的list。

2. 但是 itervalues() 方法不会转换,它会在迭代过程中依次从 dict 中取出 value,所以 itervalues() 方法比 values() 方法节省了生成 list 所需的内存。

3. 打印 itervalues() 发现它返回一个 对象,这说明在Python中,for 循环可作用的迭代对象远不止 list,tuple,str,unicode,dict等,任何可迭代对象都可以作用于for循环,而内部如何迭代我们通常并不用关心。

任务

给定一个dict:

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

请计算所有同学的平均分。

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

sum = 0.0
i = 0
for s in d.itervalues():
  sum += s
  i += 1
print sum/i
#78.25

以上这篇Python values()与itervalues()的用法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

相关文章

  • Python数组变形的几种实现方法

    Python数组变形的几种实现方法

    本文主要介绍了Python数组变形的几种实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • OpenCV-Python实现怀旧滤镜与连环画滤镜

    OpenCV-Python实现怀旧滤镜与连环画滤镜

    很多时候通过ps可以做很多效果,今天我们来介绍使用OpenCV-Python实现怀旧滤镜与连环画滤镜,具有一定的参考价值,感兴趣的可以了解一下
    2021-06-06
  • python语言基本语句用法总结

    python语言基本语句用法总结

    在本篇文章里小编给大家整理了关于python语言基本语句的相关知识点以及实例代码,需要的朋友们参考下。
    2019-06-06
  • python中networkx函数的具体使用

    python中networkx函数的具体使用

    本文主要介绍了python中networkx函数的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • Python性能测试工具Locust安装及使用

    Python性能测试工具Locust安装及使用

    这篇文章主要介绍了Python性能测试工具Locust安装及使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-12-12
  • 2023巨详细的Python安装库教程(以pycharm和Anaconda安装pygame为例)

    2023巨详细的Python安装库教程(以pycharm和Anaconda安装pygame为例)

    这篇文章主要给大家介绍了巨详细的Python安装库教程,文中以pycharm和Anaconda安装pygame为例,通过图文介绍的非常详细,需要的朋友可以参考下
    2024-01-01
  • Python实现PowerPoint演示文稿到图片的批量转换

    Python实现PowerPoint演示文稿到图片的批量转换

    PowerPoint演示文稿作为展示创意、分享知识和表达观点的重要工具,被广泛应用于教育、商务汇报及个人项目展示等领域,用Python代码可以高效地实现PowerPoint演示文稿到图片的批量转换,从而提升工作效率,文本将介绍如何使用Python实现PowerPoint演示文稿到图片的转换
    2024-06-06
  • python打开文件的方式有哪些

    python打开文件的方式有哪些

    在本篇文章里小编给大家分享了关于python打开文件的方式,需要的朋友们可以学习参考下。
    2020-06-06
  • 解决python 自动安装缺少模块的问题

    解决python 自动安装缺少模块的问题

    今天小编就为大家分享一篇解决python 自动安装缺少模块的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • numpy.bincount用于复数权重的方法

    numpy.bincount用于复数权重的方法

    numpy.bincount是NumPy库中的一个函数,它用于计算整数数组中每个值的出现次数,numpy.bincount函数在统计整数数组中每个值的出现次数或权重和时非常有用,本文给大家介绍numpy.bincount如何用于复数权重,感兴趣的朋友跟随小编一起看看吧
    2023-11-11

最新评论