2010-09-02 Function that returns function that repeats boolean results
Function that returns function that repeats boolean results
TrueだったらFalseで、FalseだったらTrueにしたい。
なんかそんなことそこかしこで必要で、その為の便利なものが
あるのかなぁと思ったんだけど無いぽい。
0と1を次々返す方法 - When it’s ready. (a2c.get.diary)
Yield
実装は自然だが、next()がわずらわしい。
404 Blog Not Found:Algorithm - 0と1を次々と返す簡単なお仕事
弾さん風に記述するならば、こう書くかなぁ。
#!/usr/local/bin/python3.1 -t import itertools def flipflop(p=False): def _(): return next(g) g = itertools.cycle((not not p, not p)) return _ if __name__ == '__main__': f1 = flipflop() print('f1:', f1()) print('f1:', f1()) print('f1:', f1()) print('f1:', f1()) print() f2 = flipflop(True) print('f2:', f2()) print('f2:', f2()) print('f2:', f2()) print('f2:', f2()) print() print('f1:', f1()) print('f1:', f1()) print() print('f2:', f2()) print('f2:', f2())
f1: False # False、Trueの順 f1: True f1: False f1: True f2: True # True, Falseの順 f2: False f2: True f2: False f1: False # f1を再開 f1: True f2: True # f2を再開 f2: False
トラックバック - http://d.hatena.ne.jp/agw/20100902/1283492763
リンク元
- 71 http://www.yokada.net/blog/213
- 63 http://okajima.air-nifty.com/b/2010/01/post-abc6.html
- 30 http://webcache.googleusercontent.com/search?q=cache:_PH2Tu11aAAJ:d.hatena.ne.jp/agw/?of=1+emacs+muse+図&cd=19&hl=ja&ct=clnk&gl=jp&client=firefox-a
- 26 http://d.hatena.ne.jp/mi_mutsuki/20091031/1256969568
- 26 http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&rlz=1T4GGLD_jaJP373&q=前置記法 論理式
- 25 http://www.google.co.jp/search?hl=ja&client=firefox-a&rls=org.mozilla:ja-JP-mac:official&q=mac+gnuplot+snow+leopard+table+term&aq=f&aqi=&aql=&oq=&gs_rfai=
- 24 http://www.google.co.jp/search?hl=ja&lr=&client=firefox-a&hs=w2r&rls=org.mozilla:ja:official&channel=s&q=kd-tree+アルゴリズム&revid=1223134169&sa=X&ei=3d7ETPX5F4S4cfSgjYoM&ved=0CGsQ1QIoAA
- 22 http://www.google.co.jp/search?hl=ja&lr=lang_ja&client=firefox-a&rls=org.mozilla:en-US:official&channel=s&as_qdr=all&tbs=lr:lang_1ja&q=ghostcript+font&btnG=検索&aq=f&aqi=&aql=&oq=&gs_rfai=
- 21 http://www.google.co.jp/search?hl=ja&safe=off&client=firefox-a&hs=KAN&rls=org.mozilla:ja-JP-mac:official&q=mac+os+10.6+gnuplot&aq=f&aqi=&aql=&oq=&gs_rfai=
- 21 http://www.google.co.jp/search?sourceid=chrome&ie=UTF-8&q=python+closure


























