gpt4 book ai didi

python - 如何使一个对象既是 Python2 又是 Python3 的迭代器?

转载 作者:太空狗 更新时间:2023-10-29 20:35:55 26 4
gpt4 key购买 nike

This Stack Overflow post是关于在 Python 中使对象成为迭代器。

在 Python 2 中,这意味着您需要实现一个 __iter__() 方法和一个 next() 方法。但是在 Python 3 中,您需要实现一个不同的方法,而不是next(),您需要实现__next__()

如何创建一个在 Python 2 和 3 中都是迭代器的对象?

最佳答案

只要给它__next__next 方法;一个可以是另一个的别名:

class Iterator(object):
def __iter__(self):
return self

def __next__(self):
# Python 3
return 'a value'

next = __next__ # Python 2

关于python - 如何使一个对象既是 Python2 又是 Python3 的迭代器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29578469/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com