0と1を次々返す方法の実装

0と1を次々返す方法 - When it’s ready. を考えてみました。私だったらこう実装するかな。

#!/usr/bin/env python
# -*- coding: utf-8 -*-

from operator import not_

def toggle(obj):
    while True:
        obj = not_(obj)
        yield obj

def main():
    g = toggle(True)
    print g.next()
    print g.next()
    print g.next()
    print g.next()
    print g.next()

if __name__ == '__main__':
    main()

実行結果。

$ python toggle_sample.py 
False
True
False
True
False

リファレンス: