無料で読める、東大/京大の「Python教科書」電子書籍AI・機械学習の無料電子書籍

東京大学/京都大学の授業で使われている『Pythonプログラミング入門』/『プログラミング演習 Python』教材の電子書籍が無料で読める。他のお薦め教材として『Pythonチートシート』と『初心者向けTellus学習コース』も紹介する。2023年11月の最新情報にアップデート。

» 2023年11月13日 05時00分 公開
[一色政彦デジタルアドバンテージ]
「AI・機械学習の無料電子書籍」のインデックス

連載目次

本稿は、2021年5月26日に公開した記事を、2023年11月13日の最新情報に合わせて改訂したものです。東大と京大のどちらも2023年版が公開されています。


 プログラミング言語Pythonを習得したい場合、まずは教科書型のコンテンツなどで一通りの基礎知識を学ぶ必要があるだろう。そういった目的に合うコンテンツは、書籍を含めてさまざまなものがある。本稿ではその中でも、東京大学もしくは京都大学の授業で使われており信頼性が高い電子書籍、しかも無料で入手可能なものを紹介する。

東大/京大の「Python教科書」電子書籍

東京大学『Pythonプログラミング入門』

図1 『Pythonプログラミング入門』の表紙と、中身の1ページの引用 図1 『Pythonプログラミング入門』の表紙と、中身の1ページの引用

 東京大学の数理・情報教育研究センターで公開されている授業用の教材である。

 公式ページを見ると、HTML版やColab版、Jupyter版も提供されている(ただし講義動画は視聴できない)。必要に応じて使い分けるとよいだろう。Colab版では、Google Colabという無償の実行環境でPythonコードを手軽に実行できるので、PDF版やHTML版を読む際にも併用することをお勧めする。

 目次は以下の通り。

  • 本編:
    • 1-0. Colaboratory (Colab) の使い方
    • 1-1. 数値演算
    • 1-2. 変数と関数の基礎
    • 1-3. 論理・比較演算と条件分岐の基礎
    • 1-4. テストとデバッグ
    • 2-1. 文字列 (string)
    • 2-2. リスト (list)
    • 2-3. 条件分岐
    • 3-1. 辞書 (dictionary)
    • 3-2. 繰り返し
    • 3-3. 関数
    • 4-1. ファイル入出力の基本
    • 4-2. イテラブルとイテレータ
    • 4-3. ディレクトリと木構造
    • 5-1. モジュールの使い方
    • 5-2. モジュールの作り方
    • 5-3. NumPyライブラリ
    • 6-1. 内包表記
    • 6-2. 高階関数
    • 6-3. クラス
    • 7-1. pandasライブラリ
    • 7-2. scikit-learnライブラリ
  • ▲(授業で扱わない項目):
    • Jupyter Notebook の使い方
    • セット (set)
    • 再帰
    • 簡単なデータの可視化
    • CSVファイルの入出力
    • Bokehライブラリ
    • Pythonスクリプトとコマンドライン実行
    • Matplotlibライブラリ
    • 正規表現

 Pythonの基礎を押さえた上で、代表的なライブラリから、機械学習の基礎までを扱っているという特徴がある。練習問題が多数用意されており、自分の理解度を確認しながら進められる点が特に良い。2023年5月15日に更新されたので、まだ新しいのも大きなポイントだ。

 日本語で読める「Python入門」の無料電子書籍といえば、まずはこれを一番にお薦めしたい。

京都大学『プログラミング演習 Python』

図2 『プログラミング演習 Python』の表紙と、中身の1ページの引用 図2 『プログラミング演習 Python』の表紙と、中身の1ページの引用

 京都大学の学術情報リポジトリ「KURENAI」で公開されている授業用の教材である。

 公式ページを見ると、Colabノートブックなどは用意されていないので、Python実行環境は自ら用意する必要がある。もちろん環境構築や使い方は紹介されている。

 目次は以下の通り。

  • 本編:
    • 0. まえがき
    • 1. コンピュータとプログラミング
    • 2. Python の実行環境と使い方
    • 3. 変数と演算、代入
    • 4. 例題:平方根を求める
    • 5. リスト
    • 6. 制御構造
    • 7. 京都の交差点を作る
    • 8. 力試し課題
    • 9. 関数を使った処理のカプセル化
    • 10. Turtle で遊ぶ
    • 11. Tkinter で作る GUI アプリケーション(1)
    • 12. Tkinter で作る GUI アプリケーション(2)
    • 13. クラス
    • 14. ファイル入出力
    • 15. 三目並べで学ぶプログラム開発
    • 16. Python の学術利用
    • 17. 振り返りとこれから
    • 18. 付録:IDLE Python 便利帳
    • 19. 付録:IDLE/Python でのエラーメッセージの読み方
  • コラム編:
    • 0. コラム 0 始まり
    • 1. コラム Float って?
    • 2. コラム ニュートン法
    • 3. コラム 相対精度
    • 4. コラム 仮引数と実引数
    • 5. コラム 変数のスコープ
    • 6. コラム 乱数
    • 7. コラム 再帰
    • 8. コラム GUI
    • 9. コラム プログラムと日本語 ―終わりそうで終わらない文字コードとの闘い
    • 10. コラム 名前空間
    • 11. コラム プログラムの文書化
    • 12. コラム 三角関数
    • 13. コラム 参照と複製
    • 14. コラム 擬人化
    • 15. コラム 逃げる

 Pythonの基礎文法を学んだ上で、GUIアプリケーションなどの実装経験が積めるという特徴がある。2023年版で第8章に演習問題が追加されている。2023年10月17日に改訂されたばかりで新しいのも魅力だ。(筆者がSNSの反応を見た限りでは)この電子書籍は「初心者向けの分かりやすいPython教科書」として人気がある。

 東大の電子書籍と比べると、文字が大きくて図版が豊富、書式もグラフィカルで見やすい印象である。初心者にも分かりやすい電子書籍がよい人には、これをお薦めしたい。

 以上、東大/京大のPython教科書の無料電子書籍を紹介した。比較材料として、大学教材以外で筆者がお薦めするPython教科書コンテンツを2つほど紹介して終わりとしよう。

その他にお薦めの「Python教科書」コンテンツ

『Pythonチートシート』

図3 『Pythonチートシート』の表紙と、中身の1ページの引用 図3 『Pythonチートシート』の表紙と、中身の1ページの引用

 手前味噌(みそ)になって恐縮だが、@ITのDeep Insiderフォーラム【AI・データサイエンスの学びをここから】で公開されている無料の電子書籍である(会員登録は必要であるが無料なので、ぜひこの機会にダウンロードしてみてほしい)。

 これはHTML版の記事連載をそのまま電子書籍にしたものである。

 目次は以下の通り。

  • チートシート:
    • 基本要素編
    • 関数定義編
    • 文字列/リスト/タプル/辞書/集合の操作編
    • クラス定義編
    • ファイル操作編
    • モジュール/例外編
    • 特殊メソッド編

 Pythonの基礎がコンパクトにまとめられているという特徴がある。そのため練習問題はない。2020年4月20日に更新されており、少し古くなってきているが基本文法を押さえる上では問題ないだろう。

 またDeep Insiderでは、Python言語が網羅的に解説されている全53回の連載『Python入門』(最新バージョンに合わせて随時更新中)や、2023年5月から始動した連載『Pythonデータ処理入門』もある。チートシートが物足りない場合や、もっとしっかりと学びたい場合は入門連載を読むとよいだろう。

『初心者向けTellus学習コース』

図4 『初心者向けTellus学習コース』の表紙と、中身の1ページの引用 図4 『初心者向けTellus学習コース』の表紙と、中身の1ページの引用

 Deep Insiderの電子書籍を紹介したので、バランスを取るためにも、筆者が関わっていないサイトの優良コンテンツも紹介しておこう。

 電子書籍ではないが、無料で読めるお薦めのPython教科書コンテンツである。

 目次は以下の通り。

  • 基礎編:Pythonの使い方について:
    • Lesson1 Python基本文法
    • Lesson2 NumPyの使い方(数値計算)
    • Lesson3 Matplotlibの使い方(グラフ描画)
    • Lesson4 Pandasの使い方(データ解析)
    • Lesson5 Pillowの使い方(画像加工)
    • Lesson6 scikit-learnの使い方(機械学習)
    • Lesson7 機械学習の実践
    • Lesson8 OpenCVの使い方(画像解析)

 Pythonの必要最小限の基礎文法を押さえた上で、コンピュータービジョンで活用できる各種ライブラリの使い方から、機械学習の実践やOpenCVによる画像解析といったより実践的な内容までが学べるという特徴がある。練習問題はない。

 Tellus(テルース)とは衛星画像データを扱えるプラットフォームであるが、コンピュータービジョン系の機械学習を目指している人がPythonを基礎から学ぶのであれば、このコンテンツで学ぶと効率が良いだろう。


 以上、東大/京大の教材を紹介し、おまけとして、その他、2つのPython入門コンテンツを紹介した。他にも良い教材はあるのではないかと思うが、今回紹介できたのは筆者が知っている範囲でしかない。ご了承いただきたい。

 いずれもいつか非公開になる可能性はあるだろう。本稿をきっかけに、取りあえずダウンロードしてみていただけるとうれしい。

「AI・機械学習の無料電子書籍」のインデックス

AI・機械学習の無料電子書籍

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。