この記事では主に Python が反復可能なオブジェクトを実装する方法について詳しく紹介します。興味のある方はぜひ参考にしてください。
ケース分析:反復可能なクラス。指定された範囲内のすべての素数を反復できます: pn = 数値 (1, 30) for k in PN: Print ( k) 結果は次のとおりです: 2,3,5,7,11,13,17,19,23,29
この問題を解決するにはどうすればよいですか?
#!/usr/bin/python3 class Number(object): def __init__(self, start, end): self.start = start self.end = end # 判断一个数字是否是素数 def get_num(self, k): if k >= 2: for i in range(2, k): if k % i == 0: return False return True def __iter__(self): for k in range(self.start, self.end+1): if self.get_num(k): # 是素数yield出去 yield k if __name__ == '__main__': num = Number(2, 30) for i in num: print(i)
以上がPython はジェネレーターを使用して反復可能なオブジェクトを実装するメソッドを実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。