0と1を次々返す方法

0と1を次々返す方法
Algorithm - 0と1を次々と返す簡単なお仕事
この記事を見て自分でもやってみる。

flipflop.py

#!/usr/bin/env python
# -*- coding: utf-8 -*-
def flipflop(p=False):
    def ret():
        ret.p = not ret.p
        return ret.p
    ret.p = not p
    return ret

if __name__ == "__main__":
    f = flipflop()
    print f()
    print f()
    print f()
    print f()
    print f
$ python -V
Python 2.6.5

$ python flipflop.py
False
True
False
True
<function ret at 0xb7f6d0d4>