Python スタートブック増補改訂版
パイソン スタート ブック
いちばんやさしいパイソンの本 / バージョン 3 に完全対
- 著者:
- 辻真吾(ツジ, シンゴ)
- 出版社:
- 技術評論社
- 出版日:
- 2018年04月
- ISBN:
- 9784774196435
- 在庫:
- 在庫あり
なぜ注目されているか
書籍紹介
Python3.x による最新の開発環境に完全対応。知識ゼロでもわかるイラスト & サンプル満載の解説。オブジェクト指向の考え方をしっかり理解できる。Web アプリ開発やデータ処理の基礎もわかる!
技書の森解説
プログラミングをまったく経験していない人が Python を最初の言語として学ぶとき、文法の暗記より先に必要なのは「データ」と「それを扱う道具」を区別する感覚です。『Python スタートブック 増補改訂版』 (辻真吾 著、技術評論社、2018 年 4 月刊、B5 変形判) は、その感覚を材料と道具という言葉で組み立てながら、知識ゼロの人を Python 3 の基礎からクラスと継承、そして Web アプリケーション作成とデータ処理の基本まで連れていく入門書です。国立国会図書館と openBD の登録では副題「いちばんやさしいパイソンの本」が添えられています。版元の技術評論社は本書を、好評の「いちばんやさしい Python の学習書」を約 8 年ぶりにリニューアルした版と位置づけ、イラストやサンプル満載の解説はそのままに Python 3 に完全対応させ、応用編として Web アプリケーション作成やデータ処理の基本を加えたと案内しています。読者像として挙げるのは「Python を基礎からしっかり学びたい人」と「オブジェクト指向の考え方を学びたい人」の 2 つです。
全 11 章の構成、初めてのプログラムから Web アプリケーションまで
版元公式の目次によれば、構成は全 11 章と付録 A から H で、各章末に練習問題が付きます。第 1 章「プログラムを作ろう!」で Python のインストールとインタラクティブシェル、はじめてのプログラムを扱い、第 2 章「プログラムの材料と道具」でデータ型、関数、メソッドを導入します。第 3 章「データと型のすべて」は「材料と道具をまとめて考える」「モノの上下関係を考える」「データ型とオブジェクト」という節を通じて、datetime モジュールを題材に「人生を計算してみる」ところまで進みます。第 4 章「データの入れ物」でリスト型と辞書型、第 5 章「条件分岐と繰り返し」で for 文、if 文、while 文とエラーを学び、体型判定プログラムを作ります。第 6 章「ファイルの読み書き」、第 7 章「Python で画を描く」 (turtle モジュール)、第 8 章「関数を作る」を経て、第 9 章「新しいデータ型を作る」でクラスと継承に到達します。応用編にあたる第 10 章「Web アプリケーションを作る」は Web の仕組みと CGI で作る動的な Web、サーバにデータを送る処理を、第 11 章「データを解析する」はデータベースを利用する方法とヒストグラムを描く方法を扱います。付録には Windows と macOS へのインストール手順、文字コードと日本語、関数と変数の高度な話、リスト、辞書、セットの実践テクニック、コンピュータの歴史と Python、さらに学んでいくために、外部ライブラリの追加方法が並びます。
材料と道具からクラスへ、オブジェクト指向を最初から学ぶ設計
入門書の多くは、変数と制御構文を先に済ませ、クラスは後半で駆け足に触れる構成を取ります。本書の目次が異なるのは、第 2 章の時点で「材料の種類とデータ型」と「道具としての関数」「メソッド」を対にして示し、第 3 章で「材料と道具をまとめて考える」と進める点です。Python では整数も文字列もリストもすべてオブジェクトで、値に対する操作をメソッドとして呼び出す書き方が言語全体で一貫しています。この性質のおかげで、Python は オブジェクト指向 という考え方を、後から付け足す特別な概念ではなく、最初の一行目から自然に体験できる言語になっています。材料 (データ) に道具 (メソッド) が備わっているという見立てを早い段階で作ってから、第 9 章で自分のデータ型をクラスとして定義し継承へ進む構成は、版元が読者像に「オブジェクト指向の考え方を学びたい人」を挙げていることと対応します。第 7 章の turtle モジュールで画を描く章や、第 10 章で Web アプリケーション を作る章は、書いたコードの結果が目に見える形で返ってくる到達点として置かれており、文法の練習が何のためにあるのかを途中で見失わせない役割を果たします。
知識ゼロから読める前提と、2018 年刊の Python 3 という時点
前提知識は求められていません。版元は「プログラミングの知識がゼロの方でも理解できる」ことを掲げ、付録 A と B に Windows と macOS それぞれへの Python のインストール手順を用意しています。著者の辻真吾は版元プロフィール (刊行時点) によれば 1975 年東京都生まれ、東京大学工学部計数工学科数理工学コース卒業。2000 年 3 月に大学院修士課程を修了後、創業間もない IT 系ベンチャー株式会社いい生活に入社し、技術担当の一人として Java を使った Web アプリ開発に従事。その後、東京大学先端科学技術研究センターゲノムサイエンス分野にもどり、生命科学と情報科学の融合分野であるバイオインフォマティクスに関する研究で 2005 年に博士 (工学) を取得し、刊行時点では同研究センターの特任助教として勤務する傍ら、「みんなの Python 勉強会」を主催するなど Python の普及活動にも力を入れているとされています。一方で時点には注意が必要です。本書は 2018 年 4 月の刊行で、記述は刊行時点の Python 3 系と当時の開発環境を前提にしています。インストール手順や画面、付録 H の外部ライブラリの追加方法のように環境に依存する部分は、刊行後の変化を Python 公式ドキュメントで補う前提で読んでください。本書の価値は、環境の細部ではなく、データ型からクラスまでの考え方を順序立てて身につけるところにあります。
向かない人と、Python スタートブックを選ぶべき人
他のプログラミング言語の経験があり、Python の文法の差分だけを短時間で把握したい人には、材料と道具の見立てから丁寧に積み上げる進み方は遠回りに感じられます。データ分析や機械学習をすぐに始めたい人にとっても、第 11 章はデータベースの利用とヒストグラムの描画という基本に留まるため、目的の本は別に必要です。Web 開発についても、第 10 章は CGI で動的な Web を作る仕組みの理解が主題であり、フレームワークを使った開発手順を学ぶ本ではありません。刊行後に加わった言語機能まで含めて学びたい人は、刊行年の新しい入門書と読み比べる価値があります。独学の最初の 1 冊としての候補比較は Python 本の選び方 にまとまっています。
元が取れるのは、プログラミング初体験で、動くものを作りながら Python の基礎とオブジェクト指向の考え方を 1 冊で土台まで固めたい人です。各章末の練習問題で手を動かし、第 9 章で自分のクラスを書けるようになった時点で、他の Python 本や公式ドキュメントを読む力が身についています。「いちばんやさしい」と副題に掲げる本書は、その後の学習を支える最初の足場として、知識ゼロの人にこそ手に取る価値があります。
言及した記事 (5 件)
会社の中にPythonの仲間を作るための覚え書き(Katacodaとconnpass)
♡ 47Python, 初心者, connpass, Jupyter, katacodaC言語を勉強した工大生のPython勉強ノート
♡ 8Python, 初心者, Python3, 勉強中なぜわたしはPythonが好きなのか
♡ 5Python, ポエム「Python 3 エンジニア認定基礎試験」合格体験記
♡ 4Python, 試験, Python3, Python3エンジニア認定基礎試験, 合格体験記Python3エンジニア基礎認定試験の合格記
♡ 0Python, 資格, Python3エンジニア認定基礎試験
この本に興味がある方におすすめ
関連する本
辻真吾 の他の書籍
関連記事
Python 本の選び方 - 独学の最初の 1 冊から実務品質まで
Python 本の選び方を「動機」から逆算して整理。プログラミング未経験の最初の 1 冊、業務自動化に直結する本、型ヒントとコード品質で実務水準へ進む本まで、2026 年 8 月時点の定番を独学ルートに沿って解説します。
本の選び方に正解はない
どの本を選べばいいか迷って決められない。同じテーマの入門書は扱う基礎が大きく重なるため、どれからでも学べます。確認すべき 1 点と、迷いを終わらせる決め方を解説します。
本に書いてあることが古くても学べることはある
プログラミングの世界は変化が速く、本の内容がすぐ古くなると言われます。でも、古い本からでも学べることはたくさんあります。何が古くなり、何が古くならないのかを解説します。
関連用語
エンティティと値オブジェクト
DDD における 2 つの基本的なドメインモデル要素 - 同一性で区別するエンティティと、値で区別する値オブジェクト
Base64
バイナリデータを ASCII テキストに変換するエンコーディング方式で、メールや JSON でのバイナリ転送に使われる
API ファーストデザイン
実装の前に API の仕様を設計 / 合意し、フロントエンドとバックエンドの並行開発を可能にするアプローチ
オブジェクト指向
データと操作をオブジェクトとしてまとめ、現実の概念に近づけて設計する考え方
S3 ライフサイクル
S3 オブジェクトのストレージクラスを自動的に移行し、コストを最適化する機能
データサイエンス
統計学 / プログラミング / ドメイン知識を組み合わせ、データから価値を生み出す学問領域