python迭代器实例简析


Posted in Python onSeptember 25, 2014

本文实例讲述了python迭代器的简单用法,分享给大家供大家参考。具体分析如下:

生成器表达式是用来生成函数调用时序列参数的一种迭代器写法

生成器对象可以遍历或转化为列表(或元组等数据结构),但不能切片(slicing)。当函数的唯一的实参是可迭代序列时,便可以去掉生成器表达式两端>的圆括号,写出更优雅的代码:

>>>> sum(i for i in xrange(10))
 45

sum声明:

sum(iterable[, start])
Sums start and the items of an iterable from left to right and returns the total. start defaults to 0. The iterable‘s items are normally numbers, and are not allowed to be strings. The fast, correct way to concatenate a sequence of strings is by calling ''.join(sequence). Note that sum(range(n), m) is equivalent to reduce(operator.add, range(n), m) To add floating point values with extended precision, see math.fsum().

参数要求传入可迭代序列,我们传入一个生成器对象,完美实现。

注意区分下面代码:

上面的j为生成器类型,下面的j为list类型:

j = (i for i in range(10)) 
print j,type(j) 
print '*'*70 
 
j = [i for i in range(10)] 
print j,type(j)

结果:

<generator object <genexpr> at 0x01CB1A30> <type 'generator'>
**********************************************************************
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] <type 'list'>

希望本文所述对大家Python程序设计的学习有所帮助。

Python 相关文章推荐
Python语言生成水仙花数代码示例
Dec 18 Python
python人民币小写转大写辅助工具
Jun 20 Python
python3实现windows下同名进程监控
Jun 21 Python
python实现机器学习之多元线性回归
Sep 06 Python
python匹配两个短语之间的字符实例
Dec 25 Python
对pandas通过索引提取dataframe的行方法详解
Feb 01 Python
树莓派使用python-librtmp实现rtmp推流h264的方法
Jul 22 Python
通过python连接Linux命令行代码实例
Feb 18 Python
浅谈JupyterNotebook导出pdf解决中文的问题
Apr 22 Python
学python爬虫能做什么
Jul 29 Python
python开发一款翻译工具
Oct 10 Python
Python爬虫实例之2021猫眼票房字体加密反爬策略(粗略版)
Feb 22 Python
Python中itertools模块用法详解
Sep 25 #Python
Python中unittest用法实例
Sep 25 #Python
跟老齐学Python之赋值,简单也不简单
Sep 24 #Python
跟老齐学Python之深入变量和引用对象
Sep 24 #Python
Python greenlet实现原理和使用示例
Sep 24 #Python
跟老齐学Python之数据类型总结
Sep 24 #Python
跟老齐学Python之集合的关系
Sep 24 #Python
You might like
PHP小技巧搜集,每个PHPer都来露一手
2007/01/02 PHP
php 删除记录同时删除图片文件的实现代码
2010/05/12 PHP
一个PHP二维数组排序的函数分享
2014/01/17 PHP
PHP中鲜为人知的10个函数
2014/02/28 PHP
php实现微信公众平台发红包功能
2018/06/14 PHP
php array 转json及java 转换 json数据格式操作示例
2019/11/13 PHP
php输出形式实例整理
2020/05/05 PHP
强制设为首页代码
2006/06/19 Javascript
JQuery实现简单验证码提示解决方案
2012/12/20 Javascript
javascript实现文本域写入字符时限定字数
2014/02/12 Javascript
离开当前页面前使用js判断条件提示是否要离开页面
2014/05/02 Javascript
js、jquery图片动画、动态切换示例代码
2014/06/03 Javascript
JavaScript分析、压缩工具JavaScript Analyser
2014/12/31 Javascript
第一章之初识Bootstrap
2016/04/25 Javascript
Node+Express+MongoDB实现登录注册功能实例
2017/04/23 Javascript
ES6下React组件的写法示例代码
2017/05/04 Javascript
vue2.0之多页面的开发的示例
2018/01/30 Javascript
10 种最常见的 Javascript 错误(频率最高)
2018/02/08 Javascript
vue2过滤器模糊查询方法
2018/09/16 Javascript
vue的过滤器filter实例详解
2018/09/17 Javascript
微信小程序实现卡片左右滑动效果的示例代码
2019/05/01 Javascript
解决vue cli使用typescript后打包巨慢的问题
2019/09/30 Javascript
vue组件暴露和.js文件暴露接口操作
2020/08/11 Javascript
Python脚本实现代码行数统计代码分享
2015/03/10 Python
在arcgis使用python脚本进行字段计算时是如何解决中文问题的
2015/10/18 Python
横向对比分析Python解析XML的四种方式
2016/03/30 Python
python微信好友数据分析详解
2018/11/19 Python
Python实现打印实心和空心菱形
2019/11/23 Python
Django模板报TemplateDoesNotExist异常(亲测可行)
2020/12/18 Python
澳大利亚领先的在线药房:Pharmacy Online(有中文站)
2020/02/22 全球购物
开业庆典答谢词
2014/01/18 职场文书
银行党的群众路线教育实践活动对照检查材料
2014/09/25 职场文书
2015年医院后勤工作总结
2015/05/20 职场文书
2015年工会工作总结范文
2015/07/23 职场文书
浅谈Go语言多态的实现与interface使用
2021/06/16 Golang
CSS SandBox应用场景及常见问题
2022/06/25 HTML / CSS