Python:iter与next的用法

举报
hanzee_ 发表于 2022/10/14 14:41:02 2022/10/14
【摘要】 Python:iter与next的用法 iter()定义:iter() 函数用来生成迭代器。语法:iter(object[, sentinel])object – 支持迭代的集合对象。sentinel – 如果传递了第二个参数,则参数 object 必须是一个可调用的对象(如,函数),此时,iter 创建了一个迭代器对象,每次调用这个迭代器对象的__next__()方法时,都会调用 obj...

Python:iter与next的用法

iter()

定义:iter() 函数用来生成迭代器。
语法:iter(object[, sentinel])
object – 支持迭代的集合对象。
sentinel – 如果传递了第二个参数,则参数 object 必须是一个可调用的对象(如,函数),此时,iter 创建了一个迭代器对象,每次调用这个迭代器对象的__next__()方法时,都会调用 object。
返回值:iter()函数返回值为一个迭代器对象。

lst = iter([0, 1, 2, 3])
print(lst)#<list_iterator at 0x7fb83f6b9700>
for i in iter(lst):
    print(i)
    #0
    #1
    #2
    #3

next()

定义:next()函数用来返回迭代器的下一个项目,通常与生成迭代的iter()一起使用。
语法:next(iterable[, default])
iterable – 可迭代对象
default – 可选,用于设置在没有下一个元素时返回该默认值,如果不设置,又没有下一个元素则会触发 StopIteration 异常。
返回值:下一个迭代器项目。

#获得迭代器对象
lst = iter([0, 1, 2, 3])
while True:
    try:
        # 获得下一个值:
        print(next(lst))
        #0
        #1
        #2
        #3
    except StopIteration:
        # 遇到StopIteration就退出循环
        break
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。