教職員向けシラバス
このシラバスは、ハイスクールPython を授業や補習等で活用される教職員の方々向けのものです。各単元の指導ポイントや活用方法を具体的に解説しておりますので、ぜひ参考にしてください。
1. ハイスクールPython 公開の背景
2025年1月の大学入学共通テストで「情報Ⅰ」が初めて実施されました。「情報Ⅰ」は高校1年生の必修科目でもありますが、高校で初めて扱う分野であることからも週2コマの授業で充分な知識を身に付けることは難しく、教員側も不慣れな状況です。
そこで、『ハイスクールPython』では全国の高校生に質の高い学習の場を提供するとともに、将来活用できる論理的思考力や AI 分野、コンピューターサイエンス分野の背景となる知識をつけていただくことを目的とし、動画を主にしたコンテンツの製作を開始する事にしました。
最終的には、全国300万人の高校生と教育関係者の皆様を軸に「情報Ⅰ」やプログラミング学習の分かりやすい教材となることを目指しています。
2. ハイスクールPython の概要と特徴
高校生向けに作られた無料の Python 学習教材(「情報Ⅰ」にも対応)で、全国の教育関係者にコンテンツの利用や改変を許可しております。そのため、授業や補習等で活用される教職員の方々につきましてもご利用いただけます。
ライセンス - クリエイティブ・コモンズ 表示 4.0 国際 (CC BY 4.0)
ハイスクールPython は、教育の機会均等と質の高いプログラミング教育の普及を目指し、以下のライセンスで提供しています。
本教材はクリエイティブ・コモンズ 表示 4.0 国際ライセンス(CC BY 4.0)の下で公開されています。このライセンスにより、教育関係者の皆様は自由に本教材を活用いただけます。
このライセンスで可能なこと
- 共有・複製: 教材を自由にコピーして配布できます
- 改変: 授業のニーズに合わせて教材を修正・編集できます
- 商用利用: 営利・非営利を問わず利用可能です
- 二次創作: 本教材をベースにした新たな教材の作成が可能です
唯一の条件
表示: 適切なクレジット表示をお願いいたします。
例: 「本教材は ハイスクールPython の内容を利用しています(CC BY 4.0)」
クレジット表示の具体例
印刷物
出典:ハイスクールPython(https://highschool-python.jp)
ライセンス:CC BY 4.0
スライド スライドの最終ページまたはフッターに以下を記載:
© ハイスクールPython(CC BY 4.0)
動画・音声 動画の冒頭または終わりに口頭で:
この教材は ハイスクールPython のコンテンツを利用しています。
ライセンスに関するよくあるご質問
Q: 学校の教材として改変して使用できますか?
A: はい、自由に改変して使用できます。クレジット表示をしていただければ、学校独自の教材として再構成いただけます。
Q: 生徒に配布する資料に使用できますか?
A: もちろん可能です。印刷物やデジタル資料など、形式を問わず利用いただけます。
Q: 商用の塾や研修で使用できますか?
A: はい、営利目的での利用も許可されています。適切なクレジット表示のみお願いします。
Q: 他の教材と組み合わせて使用できますか?
A: 可能です。他の教材との組み合わせや統合も自由に行えます。ただし、ハイスクールPython から取得した部分についてはクレジット表示が必要です。
コンテンツの特徴
-
上場企業が運営するプログラミングの e ラーニング講座の講師を務め、高校生への豊富な指導歴もある講師が、高校生が学びやすいようなカリキュラムや講座を制作し、教職員向けのシラバス(本シラバス)も作成しております。
-
Web サイト(当サイト)上のテキスト, YouTube 上に公開された動画, Google Colab 上の Python の実行環境を活用し、PC 上だけでなく、タブレットでもプログラミングの基礎からデータ分析まで体系立てて学習可能
-
単に Python の学習教材に留まらない学習プラットフォームとして、コラム動画等にて使い方やキャリアなどの付加コンテンツを公開
プログラミングを学ぶ上で、「動画を視聴する」「テキストを読んでノートにまとめる」「実際にコードを書いて動かす」など、人によってそれぞれ向いている(もしくは好みの)学習方法があると思います。ハイスクールPython では、それぞれの学習方法や指導方法に合わせた形で、柔軟にご利用いただけます。
想定される活用シーン
-
「情報Ⅰ」の授業との連携
- 授業の予習・復習教材として
- 実習時間の補完教材として
- 教科書の内容を深める実践的な例として
-
補習・自主学習での活用
- 長期休暇中の課題として
- 進学希望者の受験対策として
- 個別最適化学習の教材として
本教材はハイスクールPython のコンテンツ単独としても十分役立てていただけますが、「情報Ⅰ」の教科書や問題集などと併用することも有効です。教科書で学んだ概念を本教材で実践的に深めることで、より効果的な学習が期待できます。
3. 年間指導計画例
本講座は全 10 章 で構成されております。(それ以外のコラム動画は学習コンテンツとしての本編ではなく、さらなる学習やキャリア情報などの付加的なコンテンツです。)
以下に、年間計画での活用例を記載します。学校の年間計画や生徒の理解度に合わせてご調整ください。
学習到達
- Python を用いて、変数、条件分岐、繰り返し処理、リスト・辞書などの基本的な概念を扱い、問題に応じたプログラムや解決方法を考える力を身に付ける。
- 統計的な基礎概念(平均値、中央値、標準偏差、相関係数等)を理解し、matplotlib 等によるデータの可視化を実践することで、身近なデータからその傾向や相関を分析する力を身に付ける。
- これらの学習経験により、高等学校「情報Ⅰ」で重視される論理的思考力やプログラミング的思考力を培い、将来的な機械学習、AI、Web 開発などの専門的な分野へステップアップするための土台を形成する。
前期(4 月 〜 9 月): Python の基礎(1-7章)
月 | 単元 | 主な学習内容 | 指導上のポイント |
---|---|---|---|
4月 | 1章 | プログラミング概論、開発環境の準備 | 実行環境の確認、基本操作の習得 |
5月 | 2-3章 | 変数とデータ型、条件分岐 | 数学的概念との関連付け、フローチャートの活用 |
6月 | 4章 | 繰り返し処理、アルゴリズム | 具体例を用いた説明、段階的な難易度設定 |
7月 | 5章 | データ構造、リストと辞書 | 実データの活用、視覚的な説明 |
9月 | 6-7章 | 関数、エラー処理 | モジュール化の意義、デバッグ演習 |
変数とデータ型の学習では、生徒が『なぜ型が必要なのか』という疑問を持ちがちです。実際のデータ(例:身長・体重・名前など)を例に挙げて、データの性質によって扱い方が異なることを説明すると理解が深まります。
変数やデータ型のような抽象的な概念よりも、if 文, for 文のような手続き的な概念の方が生徒にとって身近に感じられる場合も多いかと思います。その場合は、3, 4 章と 2 章の学習順番を入れ替えることも推奨です。
後期(10 月 〜 3 月): Python を使ったデータ分析(8-10 章)
月 | 単元 | 主な学習内容 | 指導上のポイント |
---|---|---|---|
10月 | 8章 | データ処理、可視化技法 | 実データの活用、グラフ表現の工夫 |
11月 | 9章 | 統計の基礎、データ分析 | 身近な例の活用、数学との連携 |
12月 | 10章 | シミュレーション、モデル化 | 実験との比較、視覚的な理解 |
1-3月 | 総合演習 | プロジェクト学習、発展的課題 | 個別指導、成果発表 |
1-3 月については、ここまでのハイスクールPython の内容を総合的に活用して、生徒の理解度を確認すること、また、自分で課題を考えて発展的な学習を行っていくための土台として活用していただけます。発展的な学習のヒントとして、コラム動画も公開していきます。
4. 具体的な指導展開例
ハイスクール Python の内容は、それぞれの動画が 7 つの項目に分かれています。1 項目の平均は 8 分程度なので、一回の授業で使用する場合は 2 〜 3 項目程度を使用することをおすすめします。
基本的な授業の流れ(50 分)
-
導入(5 分)
- 前回の復習(小テストやペアワークで確認)
- 本時の目標確認(具体的な到達目標を提示)
-
展開(35 分)
- 動画教材の視聴(15 分)
- 実習・演習・質疑応答(20 分)
-
まとめ(10分)
- 学習内容の確認(振り返りシートの活用)
- 次回予告・課題提示(予習課題の提示)
より具体的な指導例(第4章の場合)
目標
- for 文と while 文の基本的な使い方を理解する
- 適切な繰り返し構造を選択できるようになる
- 実践的な問題解決に繰り返し処理を活用できる
授業の展開(2 時間連続の場合)
-
導入(10分)
- 日常生活における繰り返し作業の例を挙げる
- 例: 教室の机を並べる、出席番号順に名前を呼ぶなど
- プログラムによる自動化の利点を説明
- 簡単なクイズで興味を引く
- 例: 1 から 100 までの合計: 手計算 vs プログラム
- 日常生活における繰り返し作業の例を挙げる
-
基本説明(20 分)
- 動画教材で基本概念を解説
- 簡単なサンプルコードを実行
- for 文と while 文の違いを具体例で説明
-
演習(40 分)
-
基本問題: 1 から 10 までの合計を求める
total = 0 for i in range(1, 11): total += i print(total)
-
応用問題: 特定の条件で繰り返す計算
- 例: 偶数のみの合計、特定の値で終了するなど
-
ペアプログラミング: 一人が考え、一人が入力する形式で協力
-
-
発展・まとめ(30 分)
- 実データを使った処理(例:クラスの身長データの平均値計算)
- エラー対応の練習(無限ループの回避方法など)
- 学習内容の振り返り(ワークシートに記入)
- 次回予告(リストとの組み合わせ)
生徒の反応と対応例
よくある質問・反応 | 効果的な対応方法 |
---|---|
「for文とwhile文、どちらを使えばいい?」 | 「回数が決まっているなら for、条件次第で終了するなら while」と簡潔に説明 |
「無限ループになってしまった」 | Ctrl+C で停止する方法を教え、while 文の条件が変化しているか確認させる |
「インデントがよくわからない」 | Python のブロック構造を視覚的に説明し、インデントの重要性を強調 |
「エラーメッセージが読めない」 | 典型的なエラーメッセージとその意味を一覧にしたチートシートを配布 |
「プログラミングが難しくて苦手」 | 小さな成功体験を積み重ねられるよう、段階的な課題を用意 |
5. 評価の観点と方法
評価の観点
-
知識・技能
- プログラミングの基本概念の理解
- コードの実装能力
- デバッグスキル
- 適切なデータ構造やアルゴリズムの選択能力
-
思考力・判断力・表現力
- 問題解決のための論理的思考
- 適切なアルゴリズムの選択
- コードの可読性
- プログラムの効率性や最適化への意識
-
主体的に学習に取り組む態度
- 課題への取り組み姿勢
- 自主的な学習態度
- 協働学習への参加
- エラーや困難に対する粘り強さ
評価方法と具体例
-
実習課題(60%)
各章末の演習課題や、先生方が独自に作成した定期テスト問題など
-
小テスト(20%)
- 概念理解度確認
- 例: 「for 文と while 文の違いを説明してください」
- コード読解力
- 例: 「このコードの実行結果を予測してみましょう」
- デバッグ能力
- 例: 「このコードのエラーを見つけて修正してください」
- 概念理解度確認
-
平常点(20%)
- 授業参加度
- 例: 「ペアワークでの貢献度」
- 課題提出状況
- 例: 「提出期限の遵守、提出物の完成度」
- 自主学習状況
- 例: 「発展課題への取り組み」
- 授業参加度
6. 学習支援体制
教材・リソース
-
基本教材
- Web サイト上のテキスト
- 各章ごとの内容と演習問題
- インタラクティブな学習コンテンツ
- YouTube 動画教材
- 概念説明からコーディング実演まで
- 生徒が自分のペースで繰り返し視聴可能
- Google Colab
- 環境構築不要ですぐに実行可能
- サンプ
- Web サイト上のテキスト
学習環境の整備
-
必要な環境
- インターネット接続
- 動画視聴と Colab 利用に十分な帯域
- Google アカウント
- 学校で一括作成するか個人アカウントを使用
- ブラウザ(Chrome 推奨)
- 最新版の使用を推奨
- インターネット接続
-
推奨環境
- 一人 1 台の端末
- GIGA スクール端末の活用
- 家庭での学習継続のための環境確認
- 大型提示装置(プロジェクターなど)
- 教師のデモンストレーション用
- 生徒の成果発表用
- 学習支援システム
- Google Classroom やロイロノートなどでの課題管理
- 進捗状況の可視化ツール
- 一人 1 台の端末
トラブルシューティング
よくあるトラブル | 対処法 |
---|---|
Colab が起動しない | ブラウザのキャッシュクリア、別アカウントでの試行 |
コードが動かない | インデントの確認、文法エラーの特定(エラーメッセージの読み方を指導) |
インターネット接続の問題 | オフライン用の代替教材(Jupyter Notebook のローカル環境など)を用意 |
アカウント関連の問題 | 学校管理のアカウントと予備アカウントの準備 |
生徒間の進度差 | ペア学習の導入、発展課題の準備 |
もし学校の事情やフィルタリングなどによって、Google 系のサービス(Colab, YouTube)が利用できない場合は、お問い合わせフォームよりお気軽にお問い合わせください。もし多く発生する場合は、実情に合わせた対応策を検討します。
6. 発展的な学習への対応
進学学習との連携
-
情報入試対策
- 共通テスト対策
- アルゴリズム的思考の強化
- 情報社会の諸問題への理解
- 個別入試対策
- 大学別の出題傾向に合わせた演習
- 小論文対策(情報技術と社会の関わり)
- 実技試験対策
- プログラミングコンテスト形式の演習
- 時間制限下での問題解決訓練
- 共通テスト対策
-
探究活動との連携
- データサイエンス
- 実データを用いた分析プロジェクト
- 統計的手法の実践
- AI・機械学習
- 生成 AI の基礎を学習し、Python での実装(API 連携)
- 画像認識や自然言語処理の入門
- Web アプリケーション開発
- FastAPI や Streamlit を用いた簡易アプリ開発
- データ可視化ダッシュボードの作成
- データサイエンス
探究活動との連携では、生徒の興味関心に合わせたテーマ設定が重要です。例えば、スポーツデータの分析、地域の環境データ調査、SNS データの分析など、身近なテーマから始めると取り組みやすくなります。
キャリア教育との接続
-
職業理解
まず、IT 業界の職種理解として、プログラマー、データサイエンティスト、データエンジニア、システムエンジニアなどの違いや、各職種に必要なスキルセットについて学びます。また、技術的スキルだけでなく、コミュニケーション能力などの非技術的スキルの重要性や、継続的な学習の必要性についても理解を深めます。さらに、IT 技術の発展に伴う社会変化や、新たな職種が生まれる可能性についても展望を持ちます。
-
実務との関連 実践的な問題解決として、実際の業務を模したプロジェクトや制約条件下での最適解の探索を行います。また、Git や GitHub などのバージョン管理システムの基本を学び、役割分担と協働作業を通じてチーム開発を疑似体験します。さらに、学習成果を蓄積・整理し、自己 PR に活用できるポートフォリオの作成も行います。
このシラバスは一例です。実際の指導にあたっては、生徒の理解度や学校の実情に応じて適宜調整してください。本教材に関するご質問やフィードバックは、お問い合わせフォームよりお気軽にお寄せください。