今日の模擬授業では、私たちの身近にあるプログラミングの基本的な考え方を学び、実際に Python(パイソン)でコードを書くいてみるところまでやってみます!
本格的なプログラミング学習になりますので、慣れないうちは難しく感じるかもしれないですが、楽しみながら学んでいきましょう!
みなさんは「プログラミング」と聞いて、どんなことをイメージしますか?
プログラミングと聞くと、黒い画面に英語の文字がたくさん並んでいて、なんだか難しそうなイメージがありますよね。
でも実は、プログラミングは難しいものではないんです。料理のレシピのように「何をどの順番でやるか」を書いているだけなんですよ!
プログラミングは「何をどの順番でやるか」をコンピューターに指示する作業
プログラミングとは「コンピュータにやってほしいこと」を指示する方法です。料理のレシピを例に考えてみましょう!
プログラミングとは、こうした日常の行動をコンピュータが理解できる言葉で伝える作業です。
つまり、プログラミングは「問題を解決するための方法」であり、これから学ぶPythonのようなプログラミング言語は、問題を解決するためにコンピュータに指示を伝えるための「共通の言葉」ということになります!
それでは、今度はプログラミングの特徴を見ていきましょう!
順序が大事!
状況によって「やること」を変えてもらう
プログラミングをすれば、指定した条件によって違う動きをしてくれるように指示できます。
「天気に合わせて服を決めるアプリ」を例に見てみましょう!
上記のようにシンプルな条件以外にも、複数の条件を組み合わせることで、細かく決めることもできます。
同じ作業を何度も繰り返せる
プログラミングをすることで、同じ作業を何回でも繰り返すことができます。
例えば、お店で買い物をするとき、カゴに入れた商品の値段をすべて足して、合計金額を出すことになったとします。商品の数が少ければ人間でも簡単にできますが、1000人分を計算するとなったら大変ですよね。
商品の数が多い場合はコンピュータの方が圧倒的に速く、しかも正確に計算できます。さらに、コンピュータは疲れません。人間では疲れるとミスが出てしまうこともありますが、コンピューターは間違えずに計算できます!
私たちの身の回りには、プログラミングを使った製品やサービスが数多く存在します。これらはすべて、プログラミングによって動いているんですよ!
スマートフォンのアラーム
電車の自動改札
オンラインショッピング
スマホゲームやコンシューマーゲーム
プログラミングを学ぶことによるメリットはたくさんあります。具体的に、以下のような力が身につくと言われています!
論理的思考力(直感で物事を決めるのではなく、論理で物事を理解する力)
創造力
デジタル社会への適応力
問題解決能力
コミュニケーション力
これらは、学校や将来の仕事で役立つのはもちろん、友だちや周りの人と協力して何かをするときにも役に立ちますよ!
プログラミング言語は、問題を解決するためにコンピュータに指示を伝えるための「共通の言葉」と説明しました。
プログラミング言語には、これからみなさんが学ぶPython以外にも、JavaScript(ジャバスクリプト), Java(ジャバ), C++(シープラスプラス)といった多くのプログラミング言語があります。(ちなみに、各プログラミング言語ごとに、つくれるものが異なります。例えば「ゲームを作る際に使うプログラミング言語」「アプリを作る際に使うプログラミング言語」みたいな感じですね!)
そのなかでも、なぜ、みなさんは、これからPythonを学んでいくのでしょうか?
読みやすくて書きやすい!
※ただし、書きやすさや好みには個人差があります。
幅広い活用分野
データサイエンス(データ分析)が得意!
データサイエンスとは、データを整理したり、グラフや表で分かりやすくまとめたりする作業です。Pythonは特にデータ分析の分野で人気があり、この講座を最後まで受ければ「データ分析」の基礎を身につけられますよ!
AI(人工知能)・機械学習
画像を認識したり、人が話した言葉を理解して返事をしたりする「AIの技術」にもPythonが広く使われています。また、スマートフォンの顔認証や、音声アシスタントにも利用されているんですよ!
Webアプリケーション開発
Pythonでは、初心者でもWebアプリを簡単に作れるようにするための便利なツールがいくつかあります。これらを使えば、複雑な作業を簡単にでき、多くのWebサイトやサービスが作られています!
学習教材や質問できるコミュニティが多い
Pythonは人気があるため、本や動画など、一人でも学習できる教材がたくさんあります!また、学習者向けのコミュニティもたくさんあり、分からないことは気軽に相談できる環境が整っています!
スマートフォンのアプリ
Instagram(インスタグラム)やPinterest(ピンタレスト)などの人気アプリでは、ユーザーの情報を管理するサーバー側の仕組みに使われています。
科学や宇宙の研究
NASA(アメリカ航空宇宙局)では、宇宙探査や研究データの分析にPythonが使われています。
人工知能(AI)の開発
GoogleやOpenAI(オープンAI)など、世界的に有名な企業がAIや機械学習の研究・開発にPythonを活用しています。
ブラウザだけで無料で使える(Google Colab)
昔は、Pythonを使うための環境を用意するのも一苦労。
しかし、本講座で使用する「Google Colab(グーグル・コラボラトリー・・・初心者でも簡単にPythonを使うことができるGoogleのサービス)」のように、現在はPythonを使用するための特別な設定作業が不要な環境になっており、ブラウザとインターネットがあれば、気軽にPythonでプログラミングをすることができます!
日本語でエラー表示できるからわかりやすい!
Pythonではエラーメッセージが日本語で表示される設定もできるので、英語が苦手な人でも安心です!
さあ、それではいよいよ、Pythonでプログラミングをしてみましょう・・・!と、言われても、どこで、どうやってやるのかわからないですよね。
パソコンやプログラミングに詳しい人なら、自分のパソコンに直接、Pythonをインストールして使う方法もありますが、この講座ではパソコンやプログラミング初心者でも手軽にPythonを使える「Google Colab(グーグル・コラボラトリー)」を使います!
Google Colab(グーグル・コラボラトリー)は、Googleが無料で提供しているオンラインサービスです。ブラウザ上で「ノートブック」という画面を使い、Pythonのコードを書いたり実行したりできます。自分のパソコンに特別な設定をしなくても、すぐにPythonを使える便利なサービスです!
早速、試してみましょう! Google Colabのサイト にアクセスし、左下にある「ノートブックを新規作成」をクリックします。
Google Colabのページが開きました!でも、このままだと、このページと、Google Colabのページを、いちいち切り替えしながら進めないといけないので不便ですよね!
こういう時は二つのディスプレイを使って、同時にページを見られるようにしましょう!
この「Pythonデータ分析講座」のページの上にあるタブを左クリック(指を話さないで押し続けます)しながら、隣のディスプレイにページをドラッグして移動させてみましょう!
これでGoogle Colabのページを見ながら、「Pythonデータ分析講座」のページを同時に見ることができるようになりました!
改めて「Google Colab」に戻ります。まずは、ファイルの名前を変更し、保存をするところからはじめましょう!左上にあるファイル名をクリックし「academy2025-(自分のID番号)・・・例:academy2025-01.ipynb」としてください。
「.ipynb」という文字を残しましたが、これは「Python用のファイルです」という意味があります。ちょっと見づらいかもしれませんが「.ipynb」の先頭にはカンマがあるので、消さないようにしてくださいね!
「academy2025-(自分のID番号).ipynb」と変更したら、次は、このファイルを保存してみましょう。キーボードの「controlキー」を押しながら「Sキー」を押してください。保存できましたね!でも、このファイルは、どこに保存されたんでしょうか?
実は、今の保存の作業で「Google Drive」内に自動で「Colab Notebooks」というフォルダが一緒につくられており、ファイルはそのフォルダのなかに保存されたんです!
実際に確認してみましょう。一番左上のオレンジの丸が二つあるロゴをクリックしてみましょう。Google Driveのページに移動し、今、保存した「academy2025-(自分のID番号).ipynb」があるのが確認できます。もう一度、「academy2025-(自分のID番号).ipynb」をダブルクリックし、元の画面に戻りましょう!
「Google Colab」での保存方法は、キーボードの「controlキー」を押しながら「Sキー」。保存したファイルは「Google Drive」内に保存されているぞ!
Google Colabの基本的な使い方は、以下の通りです。
基本の操作なので、チェックしておきましょう!
先ほど説明した「コードセル」の他に、もう一つ「テキストセル」というものがあります。どんな違いがあるのか見ていきましょう!
コードセル
「Pythonのコードを書いて実行」するためのセルです。
テキストセル
Pythonを実行するのではなく、主に「文章を書くためのセル」です。コードを書く際の見出しやメモ代わりなどに活用してください。
それでは、実際にプログラミングをしてみましょう!まずは「print 関数」というものを使って、文字や数字を画面に表示してみます!
「print 関数」とは、画面に文字や数字などを表示するときに使う命令のことです。ちなみに、プログラミングにおける「関数」とは「よく使う命令をひとまとめにして、簡単に使えるようにしたもの」です!
print関数の基本的な使い方
print("Hello, World!")# 文字列を表示します - Hello, World!
print(42)# 数値を表示 - 42
print("私は", 16, "歳です")# 複数の値を表示 - 私は 16 歳です
この「関数」については別の機会に学習しますので、今は「print 関数というものがあるんだな」ということを覚えておきましょう!
チェックポイント!
文字列の表示について
数値の表示について
複数の値の表示について
print("Hello, World!")# 文字列を表示します - Hello, World!
print(42)# 数値を表示 - 42
print("私は", 16, "歳です")# 複数の値を表示 - 私は 16 歳です
Google Colabで、上の3つのコードをプログラミングして、それぞれ「Hello, World!」 「42」「私は 16 歳です」と表示させてみよう!
Pythonでは、四則演算(足し算、引き算、掛け算、割り算)のような基本的な計算はもちろん、複雑な計算まで行えます。
※「5 + 3」のように数字と記号の間は「半角スペースを空ける」ことに注意!
基本的な四則演算
# 足し算 print(5 + 3) # 8
# 引き算 print(5 - 3) # 2
# 掛け算 print(5 * 3) # 15
# 割り算 print(5 / 3) # 1.6666...
他の色々な計算
# べき乗(累乗)
print(2 ** 3) # 2 の 3 乗 = 8
# 余りを求める(剰余演算)
print(7 % 3) # 7 ÷ 3 の余り = 1
# 整数の商を求める(切り捨て除算)
print(7 // 3) # 7 ÷ 3 の商 = 2
Pythonでは、皆さんが学習している数学の計算と同じように優先順位があります。確認していきましょう!
print(2 + 3 * 4) # 14 (3 * 4 が先に計算される)
print((2 + 3) * 4) # 20 (カッコの中の 2 + 3 が先に計算される)
よく使う計算例
# 平均値を求める print((80 + 95 + 90) / 3) # 88.33...
# 消費税を計算する (10%) print(1000 * 0.1) # 100
# 割引後の価格を計算する (20% オフ) print(1000 * 0.8) # 800
プログラミングで大切なことに「コードを読みやすくする」ということがあります。そのための便利な機能が「コメント」です。
「コメント」とは、プログラムの中に書く「メモ書き」のようなものです。コメントはプログラムを動かすときには無視されますが、「このプログラムが何をするか」「なぜこう書いたのか」を分かりやすく説明するために使います。
あとで自分が見たときや、他の人が読んだときにも理解しやすくなるため、特にプログラミングに慣れないうちはコメントを積極的に書いてみましょう!
1行コメント(単行コメント)
行ごとに短いコメントを書きます。
「#」(シャープ) を入力し、通常は半角スペースを入れてコメントを記載します。
# これが「1行コメントです」
print("Hello") # コメントは行の右側にも書けます
複数行コメント(ブロックコメント)
複数行に渡るコメントを書きます。
「”’」(3点リーダー) または、「”””」(トリプルクォート)を入力し、コメントを記載します。
'''これは
3点リーダーの
複数行の
コメントです
'''
"""これは
トリプルクォートの
複数行の
コメントです
"""
コードの目的を説明する
コメントの役割は、コードが「何のために」書かれているのかを明確にすることです。下のコードを見てください。
score = (80 + 90 + 85 + 92 + 88) / 5
print(f"5教科の平均点: {score}点")
他の人がこのコードを見た場合、日本語の部分を読んで「平均点を出したいんだな」というのが、なんとなくわかります。
しかし、 (80 + 90 + 85 + 92 + 88)というのが、なんなのかわからず、ちょっと不親切ですよね。そういうときは、コメントを入れて、目的をしっかり説明しておきましょう!
# 5 教科の試験の平均点を計算する
# 数学 (80点), 英語 (90点), 国語 (85点), 理科 (92点), 社会 (88点)
score = (80 + 90 + 85 + 92 + 88) / 5
print(f"5教科の平均点: {score}点")
難しい処理を説明する
複雑な計算や処理を行っている部分には、その意図を説明するコメントを入れましょう!
# 商品の合計金額を計算
# 1. 本体価格に消費税 10% を加算
# 2. 1000 円以上で 5% 割引を適用
price = 1200 # 本体価格
tax = price * 0.1 # 消費税の計算
subtotal = price + tax # 税込価格
# 1000 円以上なら 5% 割引を適用
if subtotal >= 1000:
discount = subtotal * 0.05
total = subtotal - discount
TODO(やるべきこと)を書く
将来的に改善したいことや、追加する予定の機能をコメントで残しておくと便利です。
# TODO: 後でエラー処理を追加する
# - 負の数値を入れた場合のチェック
# - 100点を超えて入力された場合のチェック
# - 数値以外が入力された場合のチェック
score = int(input("点数を入力: "))
print(f"入力された点数: {score}点")
警告や注意点などを書いておく
自分や他の人が間違えやすそうなポイントをコメントに記載し、事前にミスを防ぐようにしましょう!
# 注意:このパスワードは練習用です。実際に使うときは絶対に書き込まないこと!
password = "practice1234"
当たり前の内容は書かない!
コードを見ればすぐに分かることを、わざわざコメントに書かないようにしましょう。
コメントは「なぜこの処理をするのか」や「どうしてこの方法を選んだのか」など、コードだけでは伝わらないことを中心に書くようにしましょう。
変数の値を増やすプログラムの場合
x = 10 # x に 10 を代入する
x = x + 1 # x の値を 1 増やす(xは11になる)
コメントに書かなくても「xに10を代入する」というのは、コードを見ればわかるよね!
コメントとコードが一致しているか確認!
コードを修正したら「必ずコメントも修正」しましょう。コメントとコードの内容が異なっていると、他の人が見たときに混乱してしまいます!
消費税率を設定するプログラムの場合
# 悪い例(コメントと実際のコードが矛盾している)
# 税率 8% で計算
tax_rate = 0.1 # 実際は 10% で計算している
コメントに「税率8%で計算」と書いてあるね。当時は税率「8%」だったんだろうけど「10%」に変わったみたい。その場合は、コメントも「税率10%で計算」している文面に修正しておこう!
# 良い例(コメントとコードが一致している)
# 2023年10月現在の消費税率 (10%)
tax_rate = 0.1
コメントの量は適切に!書きすぎは逆効果
重要だからと言って、何でもかんでもコメントをつけると、逆にコードが読みにくくなってしまいます。コメントは必要な箇所だけにして、短く簡潔に書くことを意識しましょう。
チェックポイント!
文字列の表示について
コメントは、複雑な内容を伝えるのに便利だけど、書きすぎは厳禁!多すぎるコメントは、コードの可読性(読みやすさ)を下げてしまうので、重要なポイントに絞ってコメントを書くようにしましょう!
【実例】コメントを使わずに、コードを読みやすくした場合
下記は「送料無料かどうかを調べるプログラム」です。同じ内容のプログラムでも、書き方によって伝わり方が違ってきます。
悪い例(「x」という名前にしているため、コメントで「金額」と入れなければいけなくなっている)
# xは金額
x = 3500
if x >= 3000:
print("送料無料")
良い例(「price」という名前にしているため、コメントに書かなくても金額だとわかる)
price = 3500
free_shipping = 3000
if price >= free_shipping:
print("送料無料")
プログラムは「書かれた順番に上から下へと実行」されていきます。ただし「非同期処理」と呼ばれる処理など、必ずしも上から下へと実行されるわけではないものもあります。
今回の講座では取り扱いませんが、プログラムは上から下へと順番に実行されるということはチェックしておきましょう!
順番にメッセージを表示するプログラムの例
# 1番目に表示される
print("おはよう!")
# 2番目に表示される
print("今日の予定:")
# 3番目に表示される
print("1. 勉強")
print("2. 部活")
print("3. 買い物")
順番に実行される
上から下へ1行ずつ処理されます。(ただし「非同期処理」など例外的に順番通りでないものもありますが、この講座では取り扱いません)
エラー(プログラムの間違い)が起きると停止する
プログラムはエラーが起きたところで停止します。そのため、エラーが発生した行より後のコードは実行されません。
エラーが起きているので、途中で停止するプログラム
print("正常な行")
print(未定義の変数) # 文字列には「ダブルクォーテーション」をつけなければいけない。エラーなのでプログラムはこの行で停止
print("ここは実行されない")
エラーとは関係ない(プログラムに影響を与えない)もの
まずは基本のルールを覚え、どんどんコードを書いてプログラムに慣れていきましょう!
これまで学んだことを思い出しながら「自分の名前や好きなものを表示する自己紹介プログラム」を作ってみよう!
「学校」「部活」「(学校以外での)勉強」の一日の各時間を表示し、合計時間を計算させて、表示してみよう!
追加ミッション
今日の模擬授業では、高校生になって学習する「プログラミングの基本」と「Pythonを使ったコードの書き方」を学習しました。
本格的なプログラミングに関しては、慣れないうちは難しく感じるかもしれませんが、全然大丈夫!初めは先生たちもそうでした。焦らず、少しずつ慣れていきましょう!
プログラミングの世界には、まだまだ楽しくて面白いことがたくさん待っていますよ!
今、学習しているマイクラ・プログラミングは、Pythonのような本格的なプログラミングになっても役立ちますので、普段の学習も、しっかり頑張っていきましょう!