kick the base

Houdiniと、CG技術と、日々のこと。

書評: Pythonスタートブック

今回は「Pythonスタートブック」という書籍をご紹介します。

ぼくが思うPythonista(Pythonを好んで書くプログラマ)のイメージは、他の(動的型付け)言語をすでに書ける状態でPythonに落ち着いたという感じです。「最初に選んだ言語がPythonです」というイメージはあまりありません。それゆえ、Pythonistaは中〜上級者の古強者という印象があります。

かくいうぼくもPythonを書くのですが、ActionScript3からJavaScript、そしてPythonという順番で学んでいきました。特に日本では、はじめての言語がPythonというのはレアなケースなように思います。

しかし、学術分野(自然言語処理や統計、機械学習など)でのPythonの利用率は眼を見張るものがあります。そして我らが3DCGのフィールドにおいても、Pythonは共通言語と言っても過言ではありません。

上記のようなケースではPythonを初めて学ぶプログラミング言語として選択する方もおられることでしょう。そこでオススメなのが本書になります。

表紙に大きく「まったくのゼロからでも大丈夫」と書いてあるのはダテではありません。データ型、モジュール、関数、メソッド、クラス等々、コードや比喩を交えテンポよく解説が進みます。

初心者向けのプログラミングの本で陥りやすいのが、比喩や喩えを多用しすぎて「分かったような気にはなるけど実際のコードはわからない」という問題です。

喩えはあくまで喩え。本当の理解はコードで行うというのが理想形だとぼくは考えますが、本書では喩えのあとに必ずコードでの説明が入り、実に理想的な構成だといえます。

ただ本書もパーフェクトではなく、個人的に残念だと思った点も併記しておきます。

  • 比較的序盤の章で、モジュールの解説においてdatetimeを参考としている点。datetime.datetime.now()などは初学者には少々難しいかと思いました。
  • turtleモジュールを使用した作例が他の章とくらべ異質な感が否めないと思われます。
  • 章により難易度の波が感じられました。(特に7、10章が高難度な気がします)

しかし、上記などは些細な問題で、Pythonの入門書でかつ動的型付け言語そのものの入門書でもある本書は価値が高いと言えるでしょう。

はじめてPythonを学ぶ方はもとより、JavaScriptやRubyをメインにしている初学者の方が、知識の補足として読むといった使い方もオススメできます。

Pythonの勉強をはじめるなら、最初の一冊に。まさに「Pythonスタートブック」の名に恥じない良書です。