書籍概要

Pythonによる「プログラミング的思考」入門

著者
発売日
更新日

概要

本書は,Pythonを使用して「プログラミング的思考」を習得するための入門書です。「プログラミング的思考」とは,ある問題を解決するための方法や手順をプログラミングの概念に基づいて考えることで,文部科学省の掲げるプログラミング教育でも重要視されています。本書は,前半でPythonの解説,後半で実際のプログラムを使ったプログラミング的思考の解説という構成で,初心者でもモチベーションを持ちながら学習できるよう,興味が持てる例題を多数用意しています。また,練習問題もあるので,より理解が定着できます。付録で文法解説を載せており,この1冊で,Pythonとプログラミングの考え方の両方をまとめて学ぶことが可能です。

こんな方におすすめ

  • プログラミングを学びたての学生
  • 若手エンジニア

サンプル

目次

序章 プログラミング的思考とは

  • 0-1 プログラミング的思考とは
  • 0-2 プログラミング的思考を支える考え方
  • 0-3 プログラミング的思考を身に付けるには
  • 0-4 プログラミング的思考の応用
  • 0-5 データサイエンスとアルゴリズム
  • 0-6 プログラミングとPython

第1章 Python文法の基本

  • 1-1 Pythonとは
  • 1-2 Pythonの実行環境
  • 1-3 Pythonの基本文法
  • 1-4 print関数とf文字列
  • 1-5 演算子
  • 1-6 変数と代入
  • 1-7 変数の値の更新
  • 1-8 input関数
  • 1-9 for in文
  • 1-10 二重ループ
  • 1-11 if else文
  • 1-12 elif文
  • 1-13 while文
  • 1-14 リスト
  • 1-15 2次元リスト
  • 1-16 データ型
  • 1-17 関数
  • 1-18 ユーザー関数
  • 1-19 ローカルとグローバル
  • 1-20 クラス

第2章 Pythonの書法・技法

  • 2-1 プログラミング書法(プログラミング・スタイル)
  • 2-2 プログラミング技法
  • 2-3 言語仕様上の注意点
  • 2-4 ちょっとしたテクニック
  • 2-5 ビット演算子
  • 2-6 文字列処理
  • 2-7 リスト操作
  • 2-8 クラスの活用
  • 2-9 辞書の活用
  • 2-10 ファイル処理
  • 2-11 ライブラリの活用

第3章 Pythonでのグラフィックス

  • 3-1 ColabTurtle(タートルグラフィックス・ライブラリ)
  • 3-2 ポリゴン(多角形)の描画
  • 3-3 渦巻き模様の描画
  • 3-4 文字の描画

第4章 Pythonで学ぶプログラミング的思考

  • 4-1 流れ制御構造(組み合わせ)
  • 4-2 データ化
  • 4-3 抽象化と一般化
  • 4-4 分解とモジュール化
  • 4-5 データ構造とアルゴリズム

第5章 プログラミング的思考の実践①~かんたんなプログラム

  • 5-1 最大値と最小値
  • 5-2 ピタゴラスの定理
  • 5-3 シーザー暗号
  • 5-4 相性占い
  • 5-5 10進数→2進数への変換
  • 5-6 フィボナッチ数列
  • 5-7 干支の算出
  • 5-8 サイコロゲーム
  • 5-9 カレンダー
  • 5-10 幾何学模様

第6章 プログラミング的思考の実践②~再帰的思考

  • 6-1 漸化式と再帰的表現
  • 6-2 再帰の罠
  • 6-3 ハノイの塔
  • 6-4 リカーシブ・グラフィックスI
  • 6-5 リカーシブ・グラフィックスII
  • 6-6 リカーシブ・グラフィックスIII

第7章 プログラミング的思考の実践③~アルゴリズム

  • 7-1 ユークリッドの互除法
  • 7-2 モンテカルロ法
  • 7-3 素数を探す
  • 7-4 テイラー展開
  • 7-5 ソート(並べ換え)
  • 7-6 線形探索(リニアサーチ)
  • 7-7 二分探索(バイナリサーチ)
  • 7-8 自己再編成探索
  • 7-9 ハッシュ
  • 7-10 決定木
  • 7-11 ハノイの塔のシミュレーション
  • 7-12 迷路
  • 7-13 ペイント処理
  • 7-14 3次元座標変換
  • 7-15 回転体モデル
  • 7-16 3次元関数
  • 7-17 21を言ったら負けゲーム
  • 7-18 戦略を持つじゃんけん

第8章 プログラミング的思考の実践④~データサイエンス

  • 8-1 Matplotlib を使ったグラフの作成
  • 8-2 数値計算を効率的に行うNumPy
  • 8-3 Matplotlib を使った3D表示
  • 8-4 3D棒グラフの表示
  • 8-5 3次元座標を元にした立体の表示
  • 8-6 3次元関数の表示
  • 8-7 回転体モデルの表示
  • 8-8 ワイヤーフレームの表示

付録 Python文法

サポート

ダウンロード

本書に掲載しているプログラムコードおよびファイルをダウンロードすることができます。圧縮ファイルをダウンロードし,展開してご利用ください。

(2024年4月3日更新)

  1. 下の枠内に,本書P.402に記載されている「アクセスID」と「パスワード」を入力します。
  2. 「ダウンロード」をクリックします。

なお,Google Colaboratoryでipynbファイルを使用する場合,同時に使用できるセッション数には限りがあります。そのため,1つのノートブックを開いて,その都度txtファイルからコピー&ペーストした方が実行しやすい場合があります。

また,何度も実行を繰り返していると,「バックエンドを割り当てられませんでした」というメッセージが出て接続できなくなることがあります。その場合はしばらく時間をおいてから再度試してみてください。

グラフィック描画を行うサンプルプログラムは,サーバーの混雑具合などにより途中で止まってしまうことがあります。こちらも,しばらく時間をおいてから再度試してみてください。

商品一覧