≮Python≯ ミニrange のジェネレータ版を追加。。。
ミニrange(stopのみ)のジェネレータ版を作って追加。。。
class range_mini: # クラス版
def __init__(self, stop):
self.no = 0
self.stop = stop
def __iter__(self):
return self
def __next__(self):
if self.stop <= self.no:
raise StopIteration
ret = self.no
self.no += 1
return ret
def range_mini2(stop): # ジェネレータ版
no = 0
while no < stop:
yield no
no += 1
# クラス版でループさせる
print('class range_mini:版')
for i in range_mini(5):
print(i)
# ジェネレータ版でループさせる
print('def range_mini2(stop):版')
for i in range_mini2(10):
print(i)
実行結果
class range_mini:版
0
1
2
3
4
def range_mini2(stop):版
0
1
2
3
4
5
6
7
8
9
#Chromebook 上の #Linux で #Python #Python3 #プログラミング を勉強中 !
#反復子 #iterator
#ジェネレータ #yield