如何迭代实例?

2024-04-24 16:34:04 发布

您现在位置:Python中文网/ 问答频道 /正文

datatstructures.py中,有一个方法values()

def values(self):
    """Iterate over all values."""
    for item in self:
        yield item[0]

self是类的实例;如何对其进行迭代?你知道吗


Tags: 实例方法inpyselffordefall
3条回答

给定方法所属的类扩展了ImmutableList(iterable),因此该方法可以在类上迭代。你知道吗

如果所讨论的对象是Iterable,则可以对其进行迭代。这就是列表、dict和其他序列的设计方式。你知道吗

很简单,它必须实现__iter__方法,例如

class Test:
    def __iter__(self):
        yield 1
        yield 2

>>> instance = Test()
>>> for val in instance:
...     print val
...
1
2

相关问题 更多 >