イテレーターのサンプルプログラム

ファイル読み込みにイテレーターを使ったPythonプログラムを書いてみた。

(プログラム) iter_read.py

import sys

def read_file(file):
    with open(file) as f:
        for line in f:
            yield line


if __name__ == '__main__':
    file = sys.argv[1]
    iter = read_file(file)

    while True:
        try:
            data = next(iter)
            print(data, end='')
        except StopIteration:
            # イテレーターの読み込みデータが尽きれば、例外が発生する
            break

(読み込みファイル) lang.txt

Python
Ruby
JavaScript

(実行結果)

$ python iter_read.py lang.txt 
Python
Ruby
JavaScript