热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

使用python3代码创建迭代器的方法

这篇文章将为大家详细讲解有关使用python3代码创建迭代器的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所

这篇文章将为大家详细讲解有关使用python3代码创建迭代器的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

首先介绍的是enumerate函数。在我们日常编程的过程当中,经常会遇到一个问题。

C语言以及一些古老的语言当中是没有迭代器这个概念的,所以我们要遍历数组或者是容器的时候,往往只能通过下标。有了迭代器之后,我们遍历的过程方便了很多,我们可以直接用一个变量去迭代一个容器当中的值。最简单的例子就是数组的遍历,比如我们要遍历items这个数组。我们可以直接:

for item in items:

通过迭代器的方式我们可以很轻松地遍历数组,而不再需要下标,也不需要计算数组的长度了。但是如果我们在循环体当中需要知道元素的下标该怎么办?

难道我们真的只能在下标和迭代器当中选择一个吗,比如在循环体的外面添加一个变量来记录下标?

idx = 0
for item in items:
    operation()
    idx += 1

这样可以解决问题,但是很麻烦,一点也不简洁,用专业的话来说一点也不pythonic(符合Python标准的代码)。为了追求pythonic,于是有了enumerate函数。

用法举例

c = [b for a,b in enumerate('11100101') if b != '0']
print(len(c))
打印结果:
5

enumerate(sequence,[start=0]) 默认是从0开始

example = (('abcd','efgh'))
for i,j in enumerate(example,start=1):
    print(i,j)
打印结果为:
1 abcd
2 efgh

关于使用python3代码创建迭代器的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。


推荐阅读
author-avatar
李容怡姿齐芷全
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有