「ひとかじりのりんご」

へっぽこエンジニアの備忘録。こちらは旧ブログ。新しい方はこちら→「http://sbkro.github.io」

「Pythonチュートリアル」&「初めてのPyhotn」

Pythonチュートリアル 第2版

Pythonチュートリアル 第2版

初めてのPython 第3版

初めてのPython 第3版

仕事でPythonが必要になったので、とりあえずオライリーを読んでみた。2冊読むのに2ヶ月もかかったよ...orz

Pythonチュートリアル」は、Python公式のオンラインドキュメントを書籍化したもの、「初めてのPython」は著者Mark Lutz氏が行っているPythonのトレーニング講座の教材をベースにしたものとなっています。

Pythonチュートリアル」がオススメな人

  • 既にオブジェクト指向プログラミング言語Java, C++, Ruby等)を習得している人
    • 頑張れば2日ぐらいで読み終わるので、さっと構文を確認して、実践で覚えた方いいです。
  • 言語仕様のリファレンスを手元に置いておきたい人。
  • 700ページもの量を読む気がない人

「初めてのPython」がオススメな人

  • プログラミング言語未習得、もしくは、手続き型言語しか知らない人
    • 環境構築・起動方法からクラス・例外設計まで丁寧にかかれています。
    • 演習問題も用意されているので、内容を理解したかを確認しながら読み進めることができます。
  • Python独自の仕組みについて、詳しく知りたい人。他の言語と比べて、下記は特殊なので目は通した方がいいかも。
    • 変数のスコープ(16章)
    • クラスの仕組み(22章から26章)

Pythonを勉強してみた感想

  • インデントが言語仕様に組み込まれているのが新鮮。たしかに「{}」いらないですよね。
  • 標準でコーディング規約が定義されているのが良い。pep8やpyflakesと言った構文チェッカを通せばすれば、一定の質のコードが出来るのが良い。
  • 全ての要素(リテラル、関数..etc)をオブジェクトとして扱うというのが新鮮。
  • 変数のスコープ(LEGBルール)やクラス周りは、他の言語と違いが有り注意が必要。
  • スーパクラスのコンストラクタの実装方法がまだ覚えられない。
  • 3.0系の移行が順調に進むのか心配。

定期的に新しい言語を習得することはいいことだと改めて実感しました。