Python test
合宿や小豆島旅行の記事を書かないといけないなあと思いつつ、なかなかPCと向かい合う時間さえとれない今日この頃。
Pythonの環境を整えるかあ、と思う。
早速windows7を立ち上げる。
インストール方法を調べてみるけれど、なんか段々面倒になってくる.....
とりあえずコマンドプロンプト起動して、Pythonの環境が奇跡的に既にインストールされていたりしないかな、と、あるはずのない期待を込めて、
python
とタイプ。
したら。
なんかインタプリタ動いたーー!!
過去の自分は、Python環境を既に確立してくれていたようです......
純粋に感動。
早速Pythonの文法を色々調べてみる。
私、C/C++,HSP,Haskell以外の言語触ったことなかったですけれど、びっくり。
なにこれ。
ttp://www.oklab.org/python.htmlを参考に調べてますが、
リストのデータ構造が標準で使えるし、無名関数の記述も、Haskellみたいにできる。
>>> y = lambda x:x**2 >>> print y <function <lambda> at 0x01805070> >>> print y(5) 25
面白いですね、Python。
ちょっと興味湧いてきた
というわけで
九九の表示をさせてみた。test.pyに保存、
python test.py
で実行
def kuku(): for i in xrange(1,10,1): for j in xrange(1,10,1): print '%2d'%(i*j), print "" kuku()
桁数揃えの処理が面倒.....
まだ慣れてないから、xrangeの使い方も見よう見真似。
Haskellでは、
import Control.Monad list = [x*y | x <-[1..9] , y <-[1..9] ] main = forM_ (partition list) print partition :: [a] -> [[a]] partition [] = [] partition ls = a:partition b where (a,b) = splitAt 9 ls
次いで、階乗
def kaijou(x): if (x<=0): return 1 return x*kaijou(x-1) print kaijou(4)
Haskellでは、
kaijou x = product [1..x]