無料 · 全9回 · Python 3

数学アニメーションでPythonを学ぶ

どのレッスンも、チャンネルのパターンをひとつ、短いスクリプトで1行ずつ作ります。まず配列とループ、次に乱数と再帰、そしてシミュレーションとグリッド。各レッスンの最後には、練習問題、クイズ、フラッシュカードがあります。コードとそのコメントは、多くのプロジェクトと同じく英語です。

必要なもの

Python 3と、2つのライブラリ: pip install numpy matplotlib. 各スクリプトの実行: python name.py.

初級

  1. レッスン1 配列と角度 「黄金角」で学ぶ np.arange でつくる numpy の配列 · 配列全体にまとめて計算する · ラジアン、np.cos と np.sin · 角度と距離から x と y へ · 値で色をつける散布図
  2. レッスン2 ループと余り 「円周上の掛け算」で学ぶ zip で組にしたものを回す for ループ · 余り % と、ひと回りして戻る角度 · plt.plot で2点を結ぶ線 · パラメーターをひとつ変えて探る
  3. レッスン3 乱数と数えあげ 「ガルトンボード」で学ぶ np.random.default_rng による乱数 · 1と0として数えられる True と False · np.bincount で数える · リスト内包表記 · 公式と照らし合わせるシミュレーション

中級

  1. レッスン4 覚えているループ 「カオスゲーム」で学ぶ 状態を1ステップから次へ引き継ぐループ · rng.integers による整数の乱数 · 条件のための while ループ · 点の配列とスライス · np.column_stack
  2. レッスン5 配列にかける公式 「振り子の波」で学ぶ 配列全体に当てはめる物理の公式 · すばやく確かめるための np.round と print · plt.subplots で並べる複数の図 · f文字列 · 位相:振り子が往復のどこにいるか
  3. レッスン6 関数と再帰 「ソート競争」で学ぶ 関数と、関数を値として渡すこと · 再帰:小さな部分について自分自身を呼ぶ関数 · 辞書に入れておくカウンター · 結果を確かめる assert · 仕事の増え方:n² 対 n·log n
  4. レッスン7 時間を一歩ずつ進める 「回転するリングの中のボール」で学ぶ シミュレーション:while ループの中の小さな時間ステップ · numpy の配列としてのベクトル · 内積と反射 · np.arctan2 による角度と、その折り返し · ループを抜ける break

上級

  1. レッスン8 力と積分 「三体の軌道」で学ぶ ベクトルで表すニュートンの重力 · 天体の組を回す入れ子のループ · 積分のリープフロッグ法 · 3次元配列:ステップ × 天体 × 座標 · 変わってはいけないもので確かめるシミュレーション
  2. レッスン9 グリッドと拡散 「チューリングパターン」で学ぶ マスのグリッドとしての2次元配列 · 端が折り返す、np.roll によるとなりのマス · ラプラシアン:マスと、そのとなりのマスとの差 · グリッド全体を1行で更新する · plt.imshow で配列を表示する