Python

プログラミングHaskellのunfoldを3言語で

プログラミングhaskell 7章の練習問題にある unfold について。 ※Haskell 標準関数 unfoldr の話ではないです。 ●まず haskellで 本で提示されてるコード unfold p h t x | p x = [] | otherwise = h x : unfold p h t (t x) わかりにくいので、パラメータの…

Pythonの分配束縛

◆タプルで分配束縛 x,y にまとめて値を代入するようなコードでは普通に使っていました。 (x,y) = (1,2) #あるいは x, y = 1, 2 でも、もっと複雑な構造でも、分配束縛できるのは知らなかった。 (a, (b, (c,)), d) = (1, (2, (3,)), 4) [a,b,c,d] #=> [1, 2, …

Python で Clojure っぽい関数チェーン。

■便利なメソッドチェーンが欲しい。 Rubyならこんなに直感的なコード、 # ruby a = [1,4,3,2] p a.sort.reverse.map{|x| x.to_s}.join('-') Pythonだとイケてない。 # python a = [1,4,3,2] print '-'.join(map(str, reversed(sorted(a)))) 操作対象の a を…