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


Posted in Python onNovember 27, 2019

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使用rsa加密算法模块模拟新浪微博登录
Jan 22 Python
Python urlopen()函数 示例分享
Jun 12 Python
python使用xlrd模块读写Excel文件的方法
May 06 Python
python批量制作雷达图的实现方法
Jul 26 Python
Python叠加两幅栅格图像的实现方法
Jul 05 Python
python爬虫之快速对js内容进行破解
Jul 09 Python
解决Python命令行下退格,删除,方向键乱码(亲测有效)
Jan 16 Python
python检查目录文件权限并修改目录文件权限的操作
Mar 11 Python
tensorflow基于CNN实战mnist手写识别(小白必看)
Jul 20 Python
python代码能做成软件吗
Jul 24 Python
python各种excel写入方式的速度对比
Nov 10 Python
Python模拟登录requests.Session应用详解
Nov 17 Python
python3 assert 断言的使用详解 (区别于python2)
Nov 27 #Python
对python中assert、isinstance的用法详解
Nov 27 #Python
浅析python,PyCharm,Anaconda三者之间的关系
Nov 27 #Python
Python操作Sonqube API获取检测结果并打印过程解析
Nov 27 #Python
python利用dlib获取人脸的68个landmark
Nov 27 #Python
python随机数分布random均匀分布实例
Nov 27 #Python
python取均匀不重复的随机数方式
Nov 27 #Python
You might like
简单的php数据库操作类代码(增,删,改,查)
2013/04/08 PHP
php简单统计在线人数的方法
2016/05/10 PHP
php版微信返回用户text输入的方法
2016/11/14 PHP
PHP htmlspecialchars_decode()函数用法讲解
2019/03/01 PHP
JQuery读取XML文件数据并显示的实现代码
2009/12/16 Javascript
ajax处理php返回json数据的实例代码
2013/01/24 Javascript
解析Javascript中中括号“[]”的多义性
2013/12/03 Javascript
使用原生js实现页面蒙灰(mask)效果示例代码
2014/06/20 Javascript
asp知识整理笔记3(问答模式)
2015/09/27 Javascript
jquery实现简洁文件上传表单样式
2015/11/02 Javascript
javascript入门教程基础篇
2015/11/16 Javascript
jQuery遍历json的方法分析
2016/04/16 Javascript
AngularJS中的DOM操作用法分析
2016/11/04 Javascript
JS 插件dropload下拉刷新、上拉加载使用小结
2017/04/13 Javascript
vux uploader 图片上传组件的安装使用方法
2018/05/15 Javascript
使用javascript做在线算法编程
2018/05/25 Javascript
jQuery实现动态加载select下拉列表项功能示例
2018/05/31 jQuery
layDate日期控件使用方法详解
2018/11/15 Javascript
JavaScript动态检测密码强度原理及实现方法详解
2019/06/11 Javascript
[06:43]2018DOTA2国际邀请赛寻真——VGJ.Thunder
2018/08/11 DOTA
Python+PyQt5实现美剧爬虫可视工具的方法
2019/04/25 Python
对Django中的权限和分组管理实例讲解
2019/08/16 Python
python 3.74 运行import numpy as np 报错lib\site-packages\numpy\__init__.py
2019/10/06 Python
使用 PyTorch 实现 MLP 并在 MNIST 数据集上验证方式
2020/01/08 Python
Pytorch 保存模型生成图片方式
2020/01/10 Python
在HTML5 canvas里用卷积核进行图像处理的方法
2018/05/02 HTML / CSS
女性时尚在线:IVRose
2019/02/23 全球购物
中科软笔试题和面试题
2014/10/07 面试题
端午节粽子促销活动方案
2014/02/02 职场文书
应聘文员自荐信范文
2014/03/11 职场文书
尊师重教演讲稿
2014/09/04 职场文书
党员个人剖析材料(四风问题)
2014/10/07 职场文书
学术会议通知范文
2015/04/15 职场文书
劳动仲裁代理词范文
2015/05/25 职场文书
生产设备维护保养制度
2015/08/06 职场文书
ubuntu开机后ROS程序自启动问题
2022/12/24 Servers