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 多线程应用介绍
Dec 19 Python
使用Python的判断语句模拟三目运算
Apr 24 Python
Python实现树莓派WiFi断线自动重连的实例代码
Mar 16 Python
Django实现自定义404,500页面教程
Mar 26 Python
Python学习小技巧之利用字典的默认行为
May 20 Python
pip命令无法使用的解决方法
Jun 12 Python
python 字典 按key值大小 倒序取值的实例
Jul 06 Python
django认证系统实现自定义权限管理的方法
Aug 28 Python
PyCharm如何导入python项目的方法
Feb 06 Python
深度学习小工程练习之垃圾分类详解
Apr 14 Python
给numpy.array增加维度的超简单方法
Jun 02 Python
python中pycryto实现数据加密
Apr 29 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 STRING 陷阱原理说明
2010/07/24 PHP
PHP手机短信验证码实现流程详解
2018/05/17 PHP
jquery 学习笔记 传智博客佟老师附详细注释
2020/09/12 Javascript
浅谈jQuery中的事件
2015/03/23 Javascript
javascript+html5实现仿flash滚动播放图片的方法
2015/04/27 Javascript
js实现显示当前状态的导航效果代码
2015/08/28 Javascript
jQuery获取访问者IP地址的方法(基于新浪API与QQ查询接口)
2016/05/25 Javascript
JavaScript实现简单的星星评分效果
2017/05/18 Javascript
VUE利用vuex模拟实现新闻点赞功能实例
2017/06/28 Javascript
js 获取html5的data属性实现方法
2017/07/28 Javascript
JavaScript实现旋转轮播图
2020/08/18 Javascript
Webpack中雪碧图插件使用详解
2018/05/25 Javascript
微信运维交互机器人的示例代码
2018/11/12 Javascript
JavaScript实现指定数量的并发限制的示例代码
2020/03/10 Javascript
[48:23]DOTA2上海特级锦标赛主赛事日 - 4 败者组第四轮#1COL VS EG第一局
2016/03/05 DOTA
Python中处理字符串之isalpha()方法的使用
2015/05/18 Python
windows下python安装小白入门教程
2018/09/18 Python
python中dir()与__dict__属性的区别浅析
2018/12/10 Python
python 的 scapy库,实现网卡收发包的例子
2019/07/23 Python
python requests包的request()函数中的参数-params和data的区别介绍
2020/05/05 Python
python能否java成为主流语言吗
2020/06/22 Python
Python系统公网私网流量监控实现流程
2020/11/23 Python
css3实例教程 一款纯css3实现的环形导航菜单
2014/10/20 HTML / CSS
详解html5 shiv.js和respond.min.js
2018/01/24 HTML / CSS
ellesse美国官方商店:意大利高级运动服品牌
2019/10/29 全球购物
德国2018年度最佳在线药房:Bodfeld Apotheke
2019/11/04 全球购物
Swanson中国官网:美国斯旺森健康产品公司
2021/03/01 全球购物
师范生自我鉴定范文
2013/10/05 职场文书
体育教师工作总结的自我评价
2013/10/10 职场文书
财务助理岗位职责
2013/11/10 职场文书
幼儿园数学教学反思
2014/02/02 职场文书
护林员个人总结
2015/03/04 职场文书
企业党员岗位承诺书
2015/04/27 职场文书
Java 在生活中的 10 大应用
2021/11/02 Java/Android
canvas实现贪食蛇的实践
2022/02/15 Javascript
Nginx 安装SSL证书完成HTTPS部署
2022/04/28 Servers