先輩がオライリーフェアをやってると言ってたので恵比寿のアトレ有隣堂に行ったときにPythonチュートリアル¥1,200を買ってきました。少し前に予約しに行ったとき絶版だから予約できないって言われた覚えがあるんだけど。それでも買えたので良かった。(バクマンと一緒に買った)内容の方はどうかと言いますと、ウェブのPythonチュートリアルに書いてある内容と同じ。
フィボナッチ数列の出力でいきなり躓いたんだけど
a, b = 0, 1 while b < 10 : print b a, b = b, a+b
この多重代入。a, b = 0, 1はそのまま。aに0、bに1が代入される。でよくわからなかったのが、以下のコード。
a, b = b, a+b
の箇所。右辺のすべての式が先に評価されたあと代入されるとの事。つまり、
a = b b = a+b
では代替えのコードにはならなくて、右辺のb, a+bが先に評価されるので、左辺のa, bに代入される前までは(最初のループだと)
a, b = 1, 0 + 1 # a, b = 1, 1 + 1ではない
となる。直感的には解るんだけど、フィボナッチ数列の出力コードとしてみたときに混乱した。なれれば便利なんだろうか。
冒頭の写真は今日、オライリー本のカタログがあったので頂いてきました。ビューティフルコードを買おうかどうかなやんでる。4000円。オライリー本は高いよね。それでもいつも買ってしまうんだけど。










