Kindle Unlimited対象のPython本の紹介 [PR]

Kindle Unlimited対象のPython本の中で、今まで自分で読んで勉強になったオススメのKindle本を、紹介・レビューしています。Python入門書、Pythonでオブジェクト指向プログラミング、Pythonレシピ本、Django入門書などジャンル分けして紹介しています。

Kindle unlmitedの対象本は定期的に更新されます。私の方でもここで取り上げている本がKindle Unlimitedの対象本かどうかを定期的にチェックしていますが、Amazonサイトで確認するようにお願いします。

※ Kindle Unlimited対象のPython本の広告・プロモーション記事です。

Python入門書の紹介

最終更新日:2022/7/20

はじめてのプログラミング Python 入門者になるための1歩 Kindle版
プログラミング自体が初めての人向けのPythonの入門書です。ですので、プログラミングを初めて学習しようとする人が理解できるように、説明も非常に丁寧に書いてあります。

この本の筆者も「プログラミングの入門書とPythonの入門書を1つにしたような入門書」と書いてあります。
ですので、プログラミング自体が初めてでPythonを勉強しようと考えている人、もしくは、言語に関係なくプログラミング自体を勉強してみたいという人向けのPython入門書です。

また、他のPython入門書を読んだけどよく理解できなかった、挫折してしまったという人にも、この本で再チャレンジしてみる事をお勧めできます。

反対に、他のプログラミング言語経験者でPythonの勉強を始めようとする人にとっては、プログラミング自体の説明とかは簡単すぎるので、別のPython入門書を読んだ方が良いかもしれません。

本の内容ですが、まず第1章の最初と付録でインストーラを使用したPythonのインストールが説明されています。
そして、第1章は、プログラムやシェルとは何かというPython以外の基本的な事や、PythonのIDLEについて説明した後、Pythonの文字列、四則演算、変数などの基本的な事について書いてあります。

第2章は、プログラミングのアルゴリズムについての基本的な説明や、Pythonのif,forなどの制御構文の基本について書いてあります。

第3章は、関数とは何かや、Pythonの基本的な組み込み関数をいくつか説明しています。

最初にも書きましたが、この本はPythonの入門書の中の入門書という感じでプログラミング自体が初めての人にはオススメできますが、Pythonの基本的な事である、リスト、タプルなどのデータ型や、自作関数の定義、例外処理、クラスについては、全く触れられていません。ですので、この本を読んだ後に、また別の本格的な入門書を読む必要があると思います。

[広告]

Kindle Unlimitedは、Amazonの電子書籍Kindleの対象本の定額読み放題サービスです。

Kindle Unlimitedの対象本の中には、プログラミングなどのIT関連の技術本が多くありますし、また、ビジネス本、実用書、マンガ、雑誌なども多くあります! (*Kindle本は、パソコン、スマートフォン、タブレット上のKindleアプリで読む事ができます)

初心者のためのPythonプログラミング入門
Python未経験者・初心者向けの入門書です。この本の最初に「長々と文章で説明するより、習うより慣れろ」というコンセプトが書かれていましたが、その通りで、多くの小さなPythonのサンプルコードが掲載されていて、そのコードを実行して、Pythonの基礎力を付けていくというスタイルの本です。

ですので、プログラミング自体が初めての人だけでなく、他のプログラミング言語の経験者でPythonを初めて勉強したい人も、手っ取り早くPythonの基本的なコードの書き方を学べるので、入門書としてお勧めの一冊です。

本の内容ですが、1章では、とりあえず簡単なPythonのコードを実行してみて(python.orgのサイト上で実行する)、2章では、インストーラをダウンロードして自分のPCにPythonをインストールする手順の説明をしています。

そして3章で、コードを書きながらPythonの基本的な文法についてです。条件分岐、繰り返し(ループ)、コレクション型のデータ(リスト、タプル、辞書型)、論理演算子、関数の作成、例外処理などについて書かれています。

この本でPythonプログラミングの基本が全て網羅されているという感じはしませんが、この本の続編に「中級に進むためのPythonプログラミング入門補強」があり、続編の方で、文字列の色々なメソッドや正規表現、内包表記、ファイル入出力、lambda(ラムダ式)、クラス(オブジェクト)、イテレータ、ジェネレータなどについて説明されていますので、続編の方もあわせて読めばPythonの基本的な文法がより身に付くと思います。

Pythonの文法を覚えた人がもっと理解を深めるための本 Kindle版
Pythonの基本的な構文やデータ型、制御文、関数、オブジェクトの基本について書かれている入門書です。

コードサンプルが多くありコンパクトにまとまっていますので、Pythonの基本的文法などのコードを知るには良い本だと思います。

特に、他のプログラミング言語経験者でPythonを初めて学習しようとする人は、手っ取り早くPythonの基本的なコードの書き方について学べると思うのでオススメです。

本の内容ですが、第1章は、Pythonの歴史や良い所について、また、Pythonの簡単な実行環境のシェル、IDLEなどについて書いてあります。

第2章は、変数やデータ型についてです。Pythonで使われる数値型、文字列型、リスト(list)、タプル(tuple)、辞書(dict)、集合(set)、Noneなどについて書いてあります。

第3章は、条件分岐やループなどの制御構文、例外処理、関数の定義や使い方についてです。また、lambda式(filterやmap関数と一緒に)についての基本的な説明も書いてあります。

第4章は、Pythonのオブジェクトやクラスの定義の仕方や使い方についてです。メソッド、コンストラクタとデストラクタ、インスタンス変数とクラス変数、継承、カプセル化について簡単なコードで説明しながら書いてあります。

Python入門以降 〜 レシピ本や実用的なコードを書くための本の紹介

スマートPythonプログラミング: Pythonのより良い書き方を学ぶ Kindle版
Pythonの作法や、実用的なPythonのコードの書き方について書いてある本です。
Pythonの基本的知識がある方向けの本で、ある程度Pythonのコードを書いた経験がある方にとっても、新しく使えるテクニックや情報などが見つかるかもしれない本だと思います。

本の内容は6つの章から構成されています。6つの章は、「開発環境を整えよう」「読みやすいコードを書く」「落とし穴を避ける」「Python らしく書く」「テストを書く」「使いやすいコードを書く」です。

「開発環境を整えよう」は、Pythonで効率的な開発を進めるのに必要な開発環境についてです。pyenv、virtualenv(やVirtualenvwrapper)、IPythonなどについて書かれています。

「読みやすいコードを書く」は、Pythonで読みやすいコードを書くためのテクニックや自動のコード整形ツールについてです。pycodestyle、autopep8や、命名規則、docstringについて書かれています。

「落とし穴を避ける」は、Pythonでプログラミングをする際に気をつけるべき事についてです。Pylint、非推奨のモジュールについて書かれています。

「Python らしく書く」は、Pythonコードの特徴的な書き方や概念についてです。イテレータとリストの違い(イテレータのメリット)、ジェネレータ、内包表記(リスト内包、集合表記、辞書内包、ジェネレータ式)、デコレータや、オブジェクト指向、クラス(特殊メソッド、オブジェクトの比較、呼び出し可能オブジェクト)について書かれています。

「テストを書く」は、Pythonのテストコードについてです。ユニットテスト(unittestパッケージ)、モック(mockモジュール)、カバレッジ(coverage, noseモジュール)について書かれています。

「使いやすいコードを書く」は、保守に手間のかからない使いやすいPythonコードの書き方についてです。パッケージングやsetuptoolsの使い方について書かれています。また、複数バージョンをサポートするためにPython2とPython3の違いについても書かれています。

逆引きPython標準ライブラリ 目的別の基本レシピ180+! impress top gearシリーズ Kindle版
Pythonのライブラリやモジュールのレシピ本、逆引き本です。レシピ本ですので、ライブラリやモジュールの様々な使い方について書いてあります。

コードサンプルとそのコードの説明がコンパクトにまとまっています。Pythonの入門書を読んだ後にこの本を読むと、Pythonのプログラミングスキルを一段レベルアップできると思いますので、入門書を読んだ人にオススメの一冊です。

本の内容ですが、Chapter1は、様々な文字列の操作についてや、Pythonのデータ型の判別方法や、eval,exec関数について書いてあります。

Chapter2は、コレクション系のデータ型のリスト、タプル、辞書、セットの様々の操作方法についてです。lambda式やmap,filter関数などについても書いてあります。

Chapter3は、reモジュールを使った正規表現についてや、テキストファイルの入出力操作、CSVファイルやデータの操作、JSONファイルやデータの操作、JSONデータとオブジェクトのデータ変換などについて書いてあります。

Chapter4は、ディレクトリやファイルの操作についてや、timeモジュール・datetimeモジュールを使った日時データの操作について書いてあります。

Chapter5は、様々な数値演算(絶対値、切り捨て、三角関数、X進数、etc)についてや乱数について書いてあります。

Chapter6は、urllibパッケージのモジュールを使用したHTTP、HTTPS通信(GETやPOST)についてや、HTTP通信してJSONデータの取得などの具体例について書いてあります。また、ウェブブラウザを操作するwebbrowserモジュールや、外部モジュールのRequestモジュールについての説明もあります。

Chapter7は、turtle、tkinterなどのGUI関連のモジュールについて書いてあります。簡単なGUIアプリを作って、そのアプリ操作について説明しています。

個人的には、特にChapter1~4、Chapter6の内容が、実用的でよく使いそうな具体的なコードが多く掲載されていたので、非常に勉強になりました。

Pythonでオブジェクト指向プログラミングを学習する本の紹介

[広告] Kindle Unlimitedなら対象の本が定額で読み放題
対象本には、プログラミングなどのIT関連本、マンガ、雑誌、ビジネス書などがたくさんあります!

速習 Python 3 中: オブジェクト指向編 Kindle版
Pythonでクラスの作成やオブジェクト指向について、基礎からしっかり学習するための本です。内容は、ほぼオブジェクト指向やクラスに絞って書いてありますので、オブジェクト指向の理解にちょっと自信がない方や、Pythonのクラス作成をなんとなくやっている人にはオススメの一冊です。
丁寧に説明されている本ですので、Pythonプログラミングの基本的文法を理解している人なら、十分に読み進められる本だと思います。

本の内容ですが、01章から19章で構成されています。01章〜08章と、11章〜15章で、オブジェクト指向やクラスについて詳しく書かれています。実際に、Pythonのコードでクラスを作成しながらオブジェクト指向について説明していくので、Pythonの実用的なプログラミングスキルが身に付くと思います。

10章は、Pythonのオブジェクト指向プログラミングで、簡単なRPGゲーム(簡単なマップ上を勇者が動くゲーム)を作リます。

16章〜18章は、例外処理について、また、09章は、オブジェクト指向から少し離れて関数型プログラミングについて説明されています。

Django入門書(Pythonでウェブアプリ)の紹介

速習 Django 3 速習シリーズ Kindle版
Djangoの入門書です。Django初心者・未経験者を対象に、Djangoを使ってDBと連携したWebアプリを開発できるようになる事を目的にした本となっています。
また、Pythonプログラミングの基本とウェブ(HTML・CSSやHTPP)の基本を理解している事を前提にした本になっています。

DBと連携する簡単なウェブアプリをDjangoで開発しながら、Djangoが採用しているMTV(Model - Template - View)の各機能について非常に詳しく解りやすく丁寧に説明している本なので、初めてDjangoを使ってみたい、勉強しようと考えている人にはお勧めの一冊です。

本の内容ですが、Part1〜Part7で構成されています。

Part1は、Djangoの特徴や機能についてや、DjangoのMTVパターンについての説明から始まります。
そして、Djangoでウェブアプリ開発をするための準備として、Djangoのインストール、プロジェクトの新規作成、Webアプリの実行と確認までの一連の流れについて説明しています。

Part2は、DjangoのMTVそれぞれの簡単なコードを書きながら、Djangoの基本について説明しています。
V(ビュー)では、HTTPリクエストを受けた時の処理とルーティング定義について、T(テンプレート)では、Djangoのテンプレートエンジン(ブラウザ画面の表示側)について、M(モデル)では、ORマッピングのためのModel(モデル)クラスの作成についてやDBの接続設定について書かれています。

そして、Part3以降でDjangoの機能について詳しく入っていきます。まずPart3は、MTVのT(テンプレート)について詳しく丁寧に説明しています。T(テンプレート)は、フロントエンド側(ブラウザ画面の表示側)の話です。

Part4は、MTVのM(モデル)についてです。DBにテストデータを準備した後に、DjangoのORマッピング機能を使ってDBからデータの取得します。その際、様々な条件でデータ取得するコードや、テーブルのリレーションについても説明しています。
Part4のDBのデータ操作はデータ取得だけで、データ登録・更新・削除についてはPart7で説明しています。

Part5は、MTVのV(ビュー)についてです。DjangoでHTTPリクエストを受けた時の処理とレスポンスについてや、URLのルーティングについて説明しています。また、Webアプリのセッション管理についても説明しています。

Part6とPart7で、ブラウザのHTMLフォームからPOSTリクエストされたデータを、DBに登録・更新・削除する機能を開発していきます。

Part6は、HTMLフォームのフロントエンド側(画面側)の開発で使用されるDjangoのフォームオブジェクト(フォームクラス)の作成や、フォームからPOSTされたデータの受付部分(V・ビュー)と表示部分(T・テンプレート)や、バリデーション機能(検証機能)について説明しています。

Part7は、サーバサイド側とDB周りの開発で、フォームからPOSTされたデータを、DBに登録・更新・削除する機能(M・モデルクラスの開発)と、モデルでのバリデーション機能について説明しています。

Python3 + Django2.0入門 - Pythonで作るWebアプリケーション開発入門 - その1 Kindle版
Djangoを使ってWebアプリケーションを開発するための入門書で、全3巻の内の1巻(その1)です。
WebとPythonプログラミングの基本を理解している事を前提にした本になっています。

本の内容ですが、1~4章で構成されています。1章は、Djangoとは何か?Djangoの良い部分などについて説明されています。

2章は、Pythonの基本文法について書かれています(Pythonの基本について簡単に説明しているだけなので、やはりこの本を読み進めるためにはPythonの基本知識を事前に身に付けておく必要があると思います。反対に言えば、Pythonプログラミングの基本知識が、この部分は読む必要性はないと思います。)
また、venvについても書かれています(venvはPythonの仮想環境を作るためのモジュールです。この後にDjangoでプロジェクトを作る時も、このvenvを使っています)。

3章から実際にDjangoを使ってウェブ開発をしていきます。まずは、Djangoのインストールして、ブラウザに"Hello World"を表示する簡単なウェブアプリを作るまでの一連の流れを説明しています。そして、HTTPリクエストのルーティング、GETリクエスト、POSTリクエストなどの主にDjangoのサーバサイドのプログラミングについて書かれています。

4章は、Djangoのテンプレートエンジン(フロントエンド側、ブラウザの表示側)について書かれています。

この本の続編の2巻(その2)と3巻(その3)についても、少し紹介しておきます。

2巻と3巻では、RSSリーダー機能を持つウェブアプリを実際にDjangoで開発していき、開発しながらDjangoについて学習していくという感じです。

2巻(その2)は、5~8章で構成されています。5章は、Webデザイン部分にBootstrapを使うための説明をしています。ですので、Djangoと直接は関係ないです。

6章は、データベースのPostgreSQLについてです。Djangoで作ったWebアプリのデータ保存にPostgreSQLを使用するための下準備として、PostgreSQLとインストールとテーブル作成をしています。ですので、この章もDjangoと直接は関係ないですし、PostgreSQLを使った経験がある人ならサラッと読めると思います。

7,8章で、DjangoからPostgreSQLを使うための説明をしています。主に、DjangoのModelやORM(オブジェクト関係マッピング)の話になっています。

そして3巻(その3)は、9~12章で構成されています。9章は、Djangoのセッション機能や認証機能(ログイン処理)の説明と実際に実装をしています。

10,11章で、PythonのRSS取得について説明されています。PythonのRSSライブラリや、DjangoでのタスクスケジュールのためのCeleryについて書かれています。

12章は、Djangoでのエラーハンドリング(例外処理)や、Djangoで開発したWebアプリをクラウドプラットフォームのHeroku上で公開(デプロイ)するまでの手順を説明しています。