今日も微速転進

ここではないどこかへ

書評:『入門 Python 3』


スポンサーリンク

ちょっと今更感はあるけどそういえば書評を書いてないね、ということで*1

概要

入門 Python 3

入門 Python 3

2015年末発行の書籍で購入したのは去年の4月。発行から2年経っているのもあるけど、翻訳本なのでちょっと記述が古い箇所がある。

Python という言語の入門書。プログラミング未経験でも読めるとは思う。ただ、ある程度コンピューターについての知識はあった方がいい。

プログラミング言語の文法の解説だけでなく、ライブラリの使い方など実際にプログラムを書きうえで必要になるであろう内容も解説している点が特徴。 なぜか付録も結構充実している。そういう点ではちょっと毛色の違う入門書。

なお、対象バージョンはPython 3.3。この記事を書いている時点のPython3系の最新版は3.6.4。

主に第1章から第6章あたりまでが文法解説。第7章から文字列の詳細、正規表現など、より詳細な解説という構成。

どこからどこまでが文法の解説かと言われると判断に迷うけど。

類書との比較

ちゃんと読んだのは今の所上記のみ。また本屋で実物を読んだら追記する予定。

なお、Dive into Python 3はHTML版はWebで読める。

参考:Dive Into Python 3 日本語版

感想・気づいた点など

章末の復習課題は基本的にスルーした。

  • 最初の導入部がいまいち
  • 特定の項目に対する説明が分散していて他の言語の経験者にとっては煩わしい
  • ページ数の割に説明が浅かったり網羅してなかったりするのでリファレンスの代わりとしてはいまいち厳しい
  • map/reduce/filter など関数型言語由来の機能には言及がない
  • 付録の充実さはありがたい
  • クックブック(逆引きコード集)としてもそれなりに使える
  • Redis について結構ページを割いている*2
  • 入門といいつつ、ユニットテストやデバッガの使い方まで解説している(第12章)
  • 電子書籍版の場合、URLがクリックできるようになっている箇所とそうでない箇所がある

第1章の、冒頭のイントロダクションは改善の余地あり、というか普通につまらん。

実際にプログラムを書くことをかなり意識しているのでその点は評価できる。日本語のプログラミングの入門書だとわかりやすい内容だけ丁寧に解説している本とか結構あるので。

ページ数はともかく、うまくまとまっているのだけど、ちょっと回りくどいというか、まどろっこしいところがある。それがオライリーらしいとも言える。

定期的に12章を読み返すようにするといいのではないか。

注意点など

「11.1.3 スレッド」のサンプルコード(p.334)はそのままではいつまでたっても終了しない。Thread()の引数に`daemon=True'としてやる必要があるので注意。

まとめ

リファレンスとしては少し厳しいけどプログラミング経験者向けのPython 3系入門書としてはいいと思う。他にちょうどいい本がないという理由で。

あれこれ書いているけど、オライリーの本が好きな人には間違いなくオススメの本。

ちょっとまわりくどいところがあるので、何かPythonでやりたいことがあるならPythonの文法解説プラス特定用途のためのプログラミングの解説、というタイプの書籍を買う方がいいと思う。

例えば、人工知能関連なら『ゼロから作るDeep Learning』。この本はPython 3の解説からスタートしている。

他にも『Pythonによるクローラー&スクレイピング入門』はPythonの解説にページを割いている。

この本を読んだ次にどういう本を読むか、と考えると『エキスパートPythonプログラミング改訂2版』あたりかな。

無理やりまとめると、Python入門書の最低ラインというかベースラインという感じです。

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

Pythonによる数値計算とシミュレーション

Pythonによる数値計算とシミュレーション

Pythonクローリング&スクレイピング -データ収集・解析のための実践開発ガイド-

Pythonクローリング&スクレイピング -データ収集・解析のための実践開発ガイド-

*1:最近このパターンばっかり……

*2:著者がRedis好きに違いない

広告