【Python実践入門】レビュー

2023年7月12日

「Python実践入門 -言語の力を引き出し、開発効率を高める WEB+DB PRESS plus」のレビューをします。

目次

章 題名
第1章 Pythonはどのような言語か
第2章 Pythonのインストールと開発者向けの便利な機能
第3章 制御フロー
第4章 データ構造
第5章 関数
第6章 クラスとインスタンス
第7章 モジュールとパッケージ、名前空間とスコープ
第8章 組み込み関数と特殊メソッド
第9章 Python特有のさまざまな機能
第10章 並列処理
第11章 開発環境とパッケージの管理
第12章 ユニットテスト
第13章 実践的なPythonアプリケーションの開発

各章の概要

第1章:Pythonはどのような言語か

Pythonの言語仕様や歴史、PEPなどを学びます。

第2章:Pythonのインストールと開発者向けの便利な機能

Pythonのインストール方法と対話モードでよく使うtype()などの組み込み関数を学びます。

第3章:制御フロー

インデントやブロック、pass文やコメント、

if文、for文、while文、break文、continue文、例外処理を学びます。

第4章:データ構造

None、真理値、数値型、文字列型、list型、tuple型、辞書、集合、内包表記などを学びます。

第5章:関数

関数の定義や作成方法、lambda式の使い方やアノテーションも学びます。

第6章:クラスとインスタンス

クラスとインスタンスの使い方を学びます。

クラスの継承や多重継承の問題点も学びます。

第7章:モジュールとパッケージ、名前空間とスコープ

モジュールやパッケージの作成や利用方法を学びます。

またそれらに関連して名前空間とスコープの概念も学びます。

第8章:組み込み関数と特殊メソッド

isinstance()などの組み込み関数、__str__などの特殊メソッドを学びます。

第9章:Python特有のさまざまな機能

ジェネレーター、デコレーター、コンテキストマネージャー、デスクリプタの機能を紹介。

より簡潔でPythonらしいコードが書けるように学びます。

第10章:並列処理

並列処理を行うconcurrent.futuresモジュールを使ったマルチスレッドを利用する方法、

マルチプロセスを利用する方法、

asyncioモジュールを使ったイベントループを利用する方法を学びます。

第11章:開発環境とパッケージの管理

仮想環境の有効化・無効化などの使い方を学びます。

パッケージの利用や作成、PyPIへのアップロードを手順を追って紹介します。

第12章:ユニットテスト

ユニットテストを行うunittestモジュールを学びます。

第13章:実践的なPythonアプリケーションの開発

Pythonのアプリケーションの開発を手順を追いながら行います。

その過程で使用するライブラリーも併せて学びます。

Python実践入門の対象読者

一通り基本文法をマスターしていて、効率よくプログラムを書きたいと思っている人が適しています。

この本でも基本文法は書かれていますが、少し飛ばし気味でこれ1冊だけで完璧という人はいないでしょう。

基本文法を知っているうえで実務レベルの最低限の知識が得られます。

一般的な2、3冊目に読む本だと思います。

良かった点

実用的なコードが多かった

一般的なPython入門の本だと文法の説明のために実用的でないコードの記載が多いです。

ただこの本だと実際のプログラムでも使えるコードが多かったです。

基本文法が一通り載っている

この本は中級者向けですが基本文法も一通り記載されています。

しかも初学者向けだと500ページぐらいの分量になるものが半分ぐらいに収まっています。

難しすぎず簡単すぎでないちょうどいいレベルで、基礎の再確認に役立ちます。

並行処理など入門書だと書いてないことも収録

一般的なPython入門の本だと書いていないことが多い並行処理やユニットテストなども書かれています。

これらは概念を理解するのが難しく、ちゃんと理解せずに導入するとコードが動かなくなるので初学者向けではないです。

ただ実務では必要になる可能性があるので知っておかないとつらいです。

並行処理の説明が良かった

Python実践入門を読んで良かったと思ったところは第10章の並行処理です。

「新・明解Python入門」には一切記述がない項目だったので読む前は心配でした。

実際読んでみるとかなり理解しやすい内容でした。

並行処理と並列処理の違いから始まり導入としてわかりやすかったです。

concurrent.futureモジュールとasyncioモジュールの利用例も逐次処理と比較して実感がわきます。

初めて学んだ内容でしたがそれでも大体は理解できました。

この単元だけでも買う価値はあったと思いました。

良くなかった点

基本文法の部分は他の本で代用したほうが無難

この本でも第2から7章までで一通りの基本文法について書かれています。

ただいきなり関数が出てきたりで順番がおかしかったりします。

第3章や第4章では一般的な入門書ならそれだけで章になるようなif文などを無理矢理詰め込んでいます。

そのため一つの項目の説明が雑になっていて、初学者がこの本だけですべてを理解するのはまず無理です。

もしこれを読んで文法がわからないのであれば「新・明解Python入門」を読むことをおすすめします。

この本はPythonの文法の解説が非常にわかりやすく書かれています。

これを読んでからPython実践入門に進むとちょうどいいレベルになります。

kindle版だと一部読めない箇所がある

この本で残念と思ったのが一部ページで文字が読めない箇所があることです。

私はKindle PaperWhiteで読んでいますがコラムのところでページが見切れて読めない箇所がいくつかありました。

発売から2年くらい経っているので修正されるのかと思いきや何もなし。

ここは修正してほしいです。

紙のほうだとそんなことはないとは思います。

kindle版はプロポーショナルフォントで読みづらい

kindle版だとプロポーショナルフォントになっていてコードがやや読みにくいです。

これは慣れれば気にならないですが、初めてだと戸惑います。

図が少なくてイメージしにくい

全体的に文字中心で図はあまりないです。

特に基本文法を説明する第2から7章まではほとんどなかったです。

この点は「新・明解Python入門」では図が多く採用されていてイメージしやすかったです。

もう少し図を取り入れてほしかったです。

まとめ

Python実践入門はPythonの入門書を読み終えて2、3冊目に読んでおきたい中級者向けの本です。

基本文法の説明がありつつも実務レベルで最低限必要な知識も記載されています。

Python入門書では物足りない、もう一段階レベルアップしたい、Pythonで仕事がしたい人に最適な1冊です。