「Python」イテレータ型オブジェクトを作成するサンプル

2021年7月16日

書式
def __iter__(self):
def __next__(self):
使用例

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
class Test:
#メソッド__iter__の実装
def __iter__(self):
self.a = 3
return self
#メソッド__next__()の実装
def __next__(self):
x = self.a
self.a *= 2
return x
cft = Test()
#iter()を呼び出す
res = iter(cft)
print("result as:")
print(next(res))
print(next(res))
print(next(res))
class Test: #メソッド__iter__の実装 def __iter__(self): self.a = 3 return self #メソッド__next__()の実装 def __next__(self): x = self.a self.a *= 2 return x cft = Test() #iter()を呼び出す res = iter(cft) print("result as:") print(next(res)) print(next(res)) print(next(res))
class Test:

  #メソッド__iter__の実装
  def __iter__(self):
    self.a = 3
    return self
    
 #メソッド__next__()の実装
  def __next__(self):
    x = self.a
    self.a *= 2
    return x

cft = Test()
#iter()を呼び出す
res = iter(cft)

print("result as:")
print(next(res))
print(next(res))
print(next(res))

実行結果
result as:
3
6
12

Python

Posted by arkgame