「独習Python 第2版」は初版と何が違う?
5年ぶりに改訂された「独習Python 第2版」。増えたページ数は56ページで、両版の公式目次を突き合わせると節ごと新設されたのは3か所でした。初版を持っている方が買い直すべきかを判断できる材料をそろえます。
【PR】本ページはアフィリエイト広告を含みます。本文中の「楽天市場で見る」リンクを経由して購入された場合、運営者が報酬を受け取ることがあります。
「独習Python」の第2版が2025年5月に出ました。初版は2020年6月なので、じつに5年ぶりの改訂です。手元に初版がある方なら、まず気になるのは「何が増えたのか」「買い直す価値はあるのか」の一点だと思います。
ところが検索しても、出てくるのは書店の商品ページと第2版そのものの書評ばかりで、初版と第2版の差を項目単位で並べた記事が見当たりませんでした。そこで、翔泳社が公開している両版の目次を節レベルで突き合わせ、差分を洗い出しました。結論から言うと、第2版で節ごと新しく増えたのは3か所です。
本記事は出版社の公式情報と、初版・第2版の目次構成の突き合わせに基づく紹介記事です。2026年8月1日時点で、運営者は本書を通読していません(読了後に所感を追記します)。本文中の推測・未確認事項は、そのつど「未確認」と明記しています。
1. 結論:この本が向く人と、買い直す価値がある人
先に結論を出します。判断を急いでいる方は、ここだけ読めば足ります。
他の言語を書いた経験があり、Pythonの文法を体系で一気に押さえたい人。入門書を1冊終えて、知識が断片のままだと感じている人。読み終えたあとも辞書として引き続けたい人。
プログラミングそのものが初めての人には重い1冊です。624ページのB5変型で、環境構築も第1章で自分のPCに作る前提です。「まず1本アプリを完成させたい」が動機なら、別の本から入るほうが挫折しにくくなります(後述の「スッキリわかるPython入門」との比較で扱います。他の候補も見たい方はPython参考書9冊の比較表へどうぞ)。
初版を持っている人はどうか。結論は「型ヒントを日常的に書く/これから書く人なら買い直す価値がある。そうでないなら急がなくてよい」です。理由は後述の目次の節レベル突合で示すとおり、第2版で節ごと増えたのが型アノテーション・列挙型(Enum)・ジェネリクスという型まわりに集中した3か所だからです。この3つは、エディタの補完精度とチームレビューの通りやすさに直結します。逆に言えば、章の骨格そのものは初版から変わっていません。
もう一点、正直に書いておきます。第2版は刊行から1年余りで、後述のとおり読者レビューの母数がまだ非常に小さい状態です。他人の評価を集めても判断材料になりません。だからこの記事では、公式に公開されている情報=目次と書誌から、自分で差分を確かめる方法を取りました。
2. 書籍データ(独習Python 第2版)
| 書名 | 独習Python 第2版 |
|---|---|
| 著者 | 山田 祥寛 |
| 出版社 | 翔泳社(独習シリーズ) |
| 版・刊行 | 第2版・2025年5月14日(初版は2020年6月22日) |
| ページ数・判型 | 624ページ/B5変型・2色刷 |
| ISBN | 978-4-7981-8949-9 |
| 対象レベル | 入門〜中級(他言語経験者の1冊目/入門書の次の1冊) |
| 電子版 | PDF版・Kindle版あり |
| 定価 | 本記事では扱いません。9冊の比較表に税込定価をまとめてあります(価格情報の更新をそこ1か所に集約しているためです) |
出典: 翔泳社 公式ページ(第2版)/同(初版)/著者サポートサイト(WINGSプロジェクト)。サンプルコード・正誤表は著者サポートサイトで配布されています。
▼ 在庫と価格を確認する(楽天市場)
初版をお持ちの方は、型ヒントを書く/これから書く予定があるかが分かれ目です(根拠は目次の節レベル突合と新設3節の実務効果)。はじめての1冊として検討中の方は、「スッキリわかるPython入門」との比較を先にご覧ください。
楽天の商品名には版表記が入っていない場合があります。「第2版・2025年5月刊・624ページ」かどうかを商品ページで必ずご確認ください(初版と混在して流通しています)。
※ 当サイトが広告提携しているのは楽天市場のみです。掲載している購入リンクは上記の1本だけで、他の販売店との価格比較は行っていません。他店の価格・在庫は、各サイトで書名とISBN(978-4-7981-8949-9)を検索してご確認ください。
3. 何が学べるか──11章で言語仕様を体系化する
本書は全11章と付録で構成されています。ざっくり言うと、次の流れです。
- 前半(1〜4章):環境の準備、変数とデータ型、演算子、制御構文と例外処理。言語の骨格にあたる部分です。
- 中盤(5〜7章):標準ライブラリを「基本」「コレクション」「その他」の3章に分けて扱います。文字列・日時・シーケンス・辞書・正規表現・ファイル操作といった、実務で毎日触る道具がここに集まっています。
- 後半(8〜11章):ユーザー定義関数(基本と応用)とオブジェクト指向構文(基本と応用)。デコレーター、ジェネレーター、非同期処理、データクラス、メタクラスまで踏み込みます。
目次の作りから読み取れる特徴が2つあります。
1つは、標準ライブラリに3章を割いていること。入門書の多くはライブラリを「付録的に紹介」で済ませますが、本書は文字列や辞書の操作を独立した章として体系化しています。この構成のおかげで、読み終えたあと「あのメソッド何だっけ」を目次から引ける辞書になります。入門を終えたあとも本棚に残る本かどうかは、ここで決まります。
もう1つは、後半4章がすべて「基本」と「応用」の対になっていること。関数もクラスも、まず基本だけで一周してから応用に戻れる作りです。裏を返すと、第9章(デコレーター・ジェネレーター・非同期処理)と第11章(特殊メソッド・メタクラス)は難度の山になります。1周目で全部を理解しようとせず、応用側を飛ばして先に進む読み方が現実的です。
学習の型は、翔泳社が「独習」シリーズ共通で掲げている「解説→例題→理解度チェック」の3ステップです。章末に理解度チェックがあり、解答は付録として提供されています。読むだけで終わらせず、手を動かして答え合わせまでできる構成になっています。
4. 初版と第2版は何が違うのか(目次の節レベル突合)
ここが本題です。翔泳社の公式ページには初版・第2版どちらの目次も残っているので、両者を節番号レベルで並べて突き合わせました。
4-1. まず書誌スペックの差
| 項目 | 初版(2020年6月) | 第2版(2025年5月) | 差 |
|---|---|---|---|
| ページ数 | 568ページ | 624ページ | +56ページ(約1割増) |
| 判型 | B5変型 | B5変型 | 変更なし |
| 章構成 | 全11章+付録 | 全11章+付録 | 章数・章タイトルとも同一 |
| ISBN | 978-4-7981-6364-2 | 978-4-7981-8949-9 | — |
刊行間隔は約4年11か月。出版社は第2版を「非同期、型ヒントなど新仕様を取り込んで5年ぶりの改訂」と説明しています(翔泳社 公式ページ)。章の枠は変えず、中身を現在のPythonに合わせて詰め直した改訂、というのが全体像です。
4-2. 第2版で「節ごと」新しく増えた3か所
両版の目次を突き合わせると、第2版で新設された節は次の3つでした。
| 第2版の新設節 | 章 | 初版での状態 |
|---|---|---|
| 8.2 型アノテーション | 第8章 ユーザー定義関数 | 該当節なし。初版の8.2〜8.4(スコープ/引数の記法/戻り値)が8.3〜8.5へ繰り下がっている |
| 11.4 列挙型(Enum) | 第11章 オブジェクト指向構文[応用] | 該当節なし |
| 11.5 ジェネリクス | 第11章 オブジェクト指向構文[応用] | 該当節なし。初版のイテレーター/メタクラスが11.6/11.7へ繰り下がっている |
突合の出典: 翔泳社 初版の目次 / 翔泳社 第2版の目次(2026年8月1日確認)。
3つとも「型」に関する節である点が、この改訂の性格をよく表しています。2020年から2026年のあいだに、Pythonの現場では型ヒントが「書ける人が書くもの」から「書いてあるのが普通」へ移りました。第2版は、その5年ぶんの変化を章立てに反映した版だと読めます。
4-3. 「非同期」の扱いには注意が必要
出版社の紹介文にある「非同期」ですが、目次を見ると初版にも第9章に同名の節(9.4 非同期処理)が存在します。つまり第2版での変化は、節の新設ではなく既存節の改訂・増補と考えるのが妥当です。ただし、本文の分量がどれだけ増えたかは目次からは分かりません(未確認)。「非同期の解説が新しく加わった」と期待して買い直すと、想定と違う可能性があります。
同じく、データクラス(11.3)も初版から存在する節です。「新仕様を取り込んで」という表現は、節の新設と既存節の改稿の両方を含んでいると理解しておくと、買ってからのギャップが小さくなります。
また、+56ページの内訳が新設3節だけなのか、他の節も増えているのか、逆に削られた内容があるのかは目次からは判断できません(未確認)。ここは現物を並べないと答えが出ない部分です。
4-4. 対応するPythonのバージョンについて
初版はPython 3.8を前提としていました(翔泳社運営のCodeZineに掲載された初版からの抜粋記事では、3.8を現行として解説しています)。
第2版については、翔泳社の公式ページに対応バージョンの明記がありません。読者の書評では「バージョンごとに、いつ使えるようになった機能かの注記が付いている」という報告が複数あります(404ニキのBlog/無限大な夢のあと)。ただしこれは個人ブログの記述であり、本記事では「第2版はPython 3.13対応」とは断定しません(未確認)。最新バージョンの機能を目当てに買うなら、書店で「本書の前提環境」のページを確認するのが確実です。
5. 新設された3つの節が、実務のどこに効くか
「型アノテーション・Enum・ジェネリクスが増えた」だけでは、買い直す判断材料になりません。この3つを知っていると、あなたのコードが具体的にどう変わるのかを、実際に動かせるコードで示します。
本書のサンプルコードではなく、本記事の運営者が書いた等価のコードです。Python 3.12.10(Windows)で実行し、記載の出力になることを確認しています。仕様の裏取りにはPython公式ドキュメントを使っています。
型アノテーション(8.2)──エディタが間違いを先に教えてくれる
関数の引数と戻り値に型を書いておく記法です。書くと何が変わるか。VS Codeの補完が「その変数に使えるメソッド」だけを出すようになり、実行前にタイプミスや型の取り違えに気づけます。他人(半年後の自分を含む)がその関数を呼ぶとき、中身を読まずに使い方が分かるようになるのも大きい効果です。
from typing import Iterable
def total_price(prices: Iterable[int], tax_rate: float = 0.1) -> int:
"""税込みの合計金額を返す(端数は切り捨て)。"""
return int(sum(prices) * (1 + tax_rate))
print(total_price([100, 250, 380])) # 803
注意点も1つ。型アノテーションは実行時に型を強制しません。上のコードに文字列のリストを渡しても、Pythonは「型が違う」とは言わず、計算しようとして落ちます。実際に total_price(["100"]) を実行すると TypeError: unsupported operand type(s) for +: 'int' and 'str' になりました。型の食い違いを実行前に見つけたいなら、mypy などの型チェッカーを別に走らせる必要があります。この線引きを知らないまま型だけ書くと、「書いたのに守ってくれない」と誤解します(仕様はtyping — 公式ドキュメントを参照)。
関数の書き方そのものに不安が残るなら、当サイトのPython関数の基本を先に読んでから戻ってくると、この節の理解が速くなります。
列挙型・Enum(11.4)──文字列や数値の直書きをやめられる
状態や区分を「名前つきの定数」としてまとめる仕組みです。効果は明快で、status == "shipped" のような文字列の直書きが消え、打ち間違いがその場でエラーになります。取りうる値の一覧がコード上に残るので、後から仕様を読み解く手間も減ります。
from enum import Enum
class OrderStatus(Enum):
PENDING = 1
SHIPPED = 2
DONE = 3
status = OrderStatus.SHIPPED
print(status) # OrderStatus.SHIPPED
print(status.name, status.value) # SHIPPED 2
print(status is OrderStatus.SHIPPED) # True
for s in OrderStatus:
print(s.name) # PENDING / SHIPPED / DONE
定義した列挙型はそのまま for で回せるので、選択肢のリストを別に作る必要がありません。ステータス管理や設定値の分岐を書く場面で、そのまま効きます(enum — 公式ドキュメント)。
ジェネリクス(11.5)──使い回せる部品に、型の情報を持たせる
「中身の型が何であっても使えるが、取り出したときの型はちゃんと分かる」クラスや関数を書くための仕組みです。共通処理を1つにまとめても、呼び出し側で補完と型チェックが効いたままになります。同じようなクラスを型ごとに複製する必要がなくなる、と言い換えてもいいです。
# Python 3.12以降の書き方(PEP 695)
class Box[T]:
def __init__(self, item: T) -> None:
self._item = item
def get(self) -> T:
return self._item
int_box = Box(3)
str_box = Box("python")
print(int_box.get() + 1) # 4
print(str_box.get().upper()) # PYTHON
角かっこで型変数を書く上の記法はPython 3.12以降のものです。3.11以前の環境では、次のように TypeVar と Generic を使った従来の書き方になります(どちらも手元で同じ結果を確認しました)。
# Python 3.11以前でも動く書き方
from typing import Generic, TypeVar
T = TypeVar("T")
class Box(Generic[T]):
def __init__(self, item: T) -> None:
self._item = item
def get(self) -> T:
return self._item
print(Box(3).get() + 1) # 4
2つの書き方が併存しているのは、Pythonの型まわりがいまも変化の途中にあるからです。だからこそ型まわりは、5年前の初版のままだと、いま独学でいちばん置き去りにされやすい部分です。初版所持者に「型を書くなら買い直す価値がある」と書いたのは、この理由です。
6. 本書とPythonLandの併走プラン
624ページを1人で読み切るのは、それだけで根気が要ります。当サイトの記事を「読む前の下ならし」「読んだ直後の手を動かす場」として挟むと、詰まったところで止まりにくくなります。対応はこうです。
※ ここから先は買ったあとの使い方です。買うかどうかの判断材料は、読者レビューの傾向と他書との比較に続きます。
| 本書の該当箇所 | 併走するPythonLandの記事 | 使いどころ |
|---|---|---|
| 第1章(1.3 開発・実行の基本環境) | Pythonのインストール/VS Codeセットアップ | 本を開く前に環境を作り終えておく。ここで止まると本編に入れない |
| 第2〜4章 変数・演算子・制御構文 | Python基本構文 | 先に全体像を10分で眺めてから読むと、細かい規則が頭に入りやすい |
| 第5〜7章 標準ライブラリ | ライブラリ一覧 | 標準ライブラリの外側に何があるかを知る。読了後の拡張先の地図になる |
| 第8〜9章 ユーザー定義関数 | 関数の基本 | 新設の型アノテーション節に入る前の下ならし |
| エラーで止まったとき | よくあるエラーと解決法 | 写経中のIndentationError・NameErrorはここで片付ける |
| 読み終えたあと | 入門書の次に作るもの/初心者向けアプリ100本 | 「読んだけど作れない」を防ぐ。理解度チェックの次は自作アプリ |
1つだけ現実的な話をすると、B5変型で624ページの本は机の上でかなり場所を取ります。本を開いたままキーボードを打つなら、画面の作業領域に余裕があるほうが写経は速くなります。学習用PCの目安はPython学習向けPCの選び方にまとめてあります。
7. 読者レビューの傾向──評価の母数はまだ小さい
この本を買うかどうかを他人の評価で決めようとすると、たぶん決まりません。第2版は読書メーターで登録13件・感想1件(2026年8月1日時点・読書メーター 第2版のページ)という状態だからです。ちなみに初版は登録75件・感想8件(同 初版のページ)で、こちらもレビューサイトとしては少数です。
その前提で、個人ブログの書評をいくつか読むと、評価の方向はおおむね一致しています。
- 肯定的な指摘:網羅性が高く、図表と配色が読みやすい。標準ライブラリを複数の章に分けて段階的に扱うので初学者の負担が小さい。バージョンごとの利用可否が注記されていて助かる(404ニキのBlog/愛しの方眼ノート)。
- 留保のついた指摘:ある程度Pythonに触れた人向けという評価。1節あたりの所要時間の記載がないため、624ページの学習計画が立てにくい(無限大な夢のあと/愛しの方眼ノート)。
- 読み方を変えた例:通読ではなく流し読み+辞書利用を選んだ、という記録もあります(note・読書記録)。
- 本書の範囲外:チーム開発の進め方、テスト手法、機械学習の応用は扱いません。そこは別の本が必要です(404ニキのBlog)。
なお、初版について書かれたものですが、「入門書でPythonを動かしてみたが知識が頭の中でまとまっていない人」向けの入門書の次のスモールステップという位置づけの評があります(BeProud社長ブログ・初版が対象)。この本の使いどころを、いちばん短く言い当てている表現だと思います。
「何章で挫折する人が多いか」を示すデータは、今回の調査では見つかりませんでした(未確認)。ただし構成上、負荷が高いのは後半(第9章・第11章の応用側)です。読み進める順番を先に決めておくほうが安全です。
8. 「スッキリわかるPython入門」とどちらを選ぶか
入門でよく並べられるのがこの2冊です。判断軸は好みではなく、環境構築をどう扱うかという設計思想の違いにあります。
| 比較項目 | 独習Python 第2版 | スッキリわかるPython入門 第2版 |
|---|---|---|
| 分量・判型 | 624ページ/B5変型 | 416ページ/A5 |
| 環境構築 | 自分のPCにローカル環境を作る前提 | ブラウザで動く実行環境(dokopy)で後回しにできる |
| 演習の型 | 解説→例題→理解度チェック(解答は付属PDF) | 練習問題+総合演習(ゲーム制作) |
| 読後の使い方 | 辞書として引き続けやすい | 読み切って次の本へ進む |
| 向いている人 | 他言語の経験がある人/体系で押さえたい人 | プログラミングが完全に初めての人 |
出典: 翔泳社 公式ページ/インプレス 公式ページ/スッキリシリーズ公式(dokopy)。
独学でつまずきやすいポイントとしてよく挙がるのが、文法ではなく最初の環境構築です。ブラウザで書き始められる本は、その壁を後ろへずらせます。逆に、他の言語で環境構築の経験がある人にとっては、その配慮は必要ありません。むしろ言語仕様の網羅量がそのまま価値になるので、独習Pythonのほうが早く目的地に着きます。ページ数は1.5倍、判型も一回り大きいので、収録量の差は数字以上です。
選び方の詳細と、他の書籍を含めた比較はPython学習書9冊の比較ページにまとめてあります。定価・レベル・対象読者を一覧にしてあるので、2冊で迷っている段階ならそちらが早いです。
9. よくある質問(FAQ)
Q. 初版を持っています。第2版に買い直す価値はありますか?
型ヒントを書く(または今後書く)予定があるなら、価値があります。第2版で節ごと新設されたのは型アノテーション・列挙型(Enum)・ジェネリクスの3か所で、いずれも型まわりに集中しているためです。逆に章構成そのものは初版と同一で、非同期処理の節も初版から存在します。型に興味がなく、初版を辞書として使えているなら、急いで買い替える必要はありません。
Q. プログラミングが完全に初めてでも読めますか?
読めなくはありませんが、最初の1冊としてはおすすめしにくいです。624ページという分量に加え、環境構築を自分のPCで行う前提のためです。個人ブログの書評でも「ある程度Pythonに触れた人向け」という評価が見られます。未経験からなら、対話形式の入門書を1冊終えてから本書に進むほうが挫折しにくくなります。
Q. 第2版はPython 3.13に対応していますか?
出版社の公式ページには対応バージョンの明記がないため、本記事では断定しません。読者の書評には「機能ごとにバージョンの注記がある」という報告が複数ありますが、いずれも個人ブログの記述です。最新機能の収録を目的に買うなら、書店で「本書の前提環境」のページを直接確認してください。
Q. 電子版と紙の本、どちらがいいですか?
写経しながら学ぶなら紙、検索して引くなら電子が向きます。本書はB5変型で624ページあるため、紙は机の上でかなり場所を取ります。一方で、読了後に辞書として使う比率が高い本なので、キーワード検索できる電子版の利点も大きいです。PDF版とKindle版のどちらも提供されています。なお、本記事に掲載している楽天市場のリンクは紙版の商品ページです。電子版をお求めの場合は、各電子書籍ストアで書名をお探しください。
Q. 読み終えるのにどれくらいかかりますか?
本書に所要時間の記載はなく、これを不便とする書評もあります。目安としては、第1章から第8章までを1日1章ペースで進めるのが1つの型です。後半の第9章〜第11章は、自分のペースで構いません(応用にあたるのは第9章と第11章です/初版についての第三者評として、同様のペース配分が紹介されています)。1周目で応用側を完全に理解しようとしないほうが、途中で止まりにくくなります。
Q. 練習問題の解答はどこにありますか?
「練習問題」「この章の理解度チェック」の解答は、翔泳社公式の目次に「付録 付属PDF」と明記されており、著者サポートサイト(WINGSプロジェクト)で「本書掲載サンプルコード&付録」として一括ダウンロードできます(2026年8月1日確認)。紙面に綴じ込まれているかどうかは現物で確認していません。
Q. 楽天で検索すると安い出品もありますが、初版でも大丈夫ですか?
用途によります。第2版で節ごと増えたのは型アノテーション・列挙型(Enum)・ジェネリクスの3か所なので、型を書かない前提で文法を一周したいだけなら、初版でも大きくは困りません。ただし本記事の主題どおり、型まわりを学びたいなら第2版が必要です。注意点として、楽天では初版と第2版が同じ「独習Python」という書名で混在して流通しており、商品名に版表記が入っていない出品があります。ISBN 978-4-7981-8949-9/624ページ/2025年5月刊のいずれかで、第2版かどうかを必ず確認してください。
Q. この本だけでアプリを作れるようになりますか?
言語仕様は身につきますが、アプリ制作の総合演習は本書には含まれません。目次上も、扱うのは文法と標準ライブラリまでです。読み終えたら、当サイトの入門書の次に作るものや初心者向けアプリ100本で、手を動かす対象を自分で決めていくのが近道です。
10. まとめ:買う判断の3条件
最後に、この記事で確かめたことを判断の形に落とします。次の3つのうち2つ以上に当てはまるなら、目次から読み取れる範囲では相性が良い1冊です。
そして、この記事でいちばん伝えたかったのは「非同期が増えた」と読める宣伝文と、目次から分かる事実には差があるという点です。買い直しの判断は、章立ての事実を見てからのほうが後悔しません。
▶ 楽天市場で在庫と価格を確認する(この記事の書籍データ欄へ戻ります)
※ 掲載しているのは楽天市場のリンク1本のみです。購入前に「第2版・2025年5月刊・624ページ」であることを商品ページでご確認ください。
まだ1冊に絞り切れない方へ:Python参考書おすすめ9冊の比較表に税込定価・レベル・対象読者を並べてあります。本書の定価もそちらに記載しています。
読み終えたあとの練習台を探している方へ:入門書の次に作るもの/初心者向けアプリ100本へどうぞ。
本ページはアフィリエイト広告を含みます。本文中の「楽天市場で見る」リンクは、もしもアフィリエイトを経由した広告リンクです。リンクを経由して商品が購入された場合、運営者が提携先から報酬を受け取ることがあります。
記事の内容・評価は報酬の有無とは無関係です。書誌情報・目次の突合結果は2026年8月1日時点で出版社公式ページを確認したものです。在庫・価格・版は変わることがあるため、購入前にリンク先でご確認ください。詳しくはプライバシーポリシーをご覧ください。
本記事は、生成AIを活用して下書きし、運営者が内容を確認・編集したうえで公開しています。AIの利用方針は免責事項をご覧ください。