第4回:ローカル環境とアプリ制作の入口

🗣 はじめに

コピペって、めちゃくちゃ便利ですよね!

でも、似たような命令を何度も書くとき、しかもちょっとずつ違う数字や条件だったりすると…手で書くのは本当にしんどい!間違いも増えるし。

そんな時に大活躍なのが「関数」です。「この処理はまとめておいて、必要なときに呼び出そう!」って、まるで料理のレシピみたいに使えます。

あと、プログラマーあるあるの怖い話。「無限ループ」です。

例えば、「私は0歳です」から「私は100歳です」って1歳ずつ増やして表示したいのに、数字を増やすのを忘れてずっと「私は0歳です」と繰り返してしまう。画面いっぱいに文字が溢れ出て止まらなくなるんです。

そんな時はもう、Ctrl+Cで強制ストップするか、もしくはウィンドウをぶっ叩いて閉じるしかない!本当にこれしかないんですよ!

プログラミングはミスしても大丈夫。むしろ、そういう経験が力になりますよ。

🎯 目標

① ローカル環境を整える

フォームでコードを実行してたけど、今度は「自分のパソコンで動かす」方法。

準備するもの:

1. VSC をインストールする  
2. Python をインストールする(PATHに追加)  
3. VSCのターミナルで python と入力して起動確認  
4. .py ファイルを書いて、Python で実行!
5. これ以降の内容はローカルに作成できた環境で実行しましょう!

② pipって何?

Pythonにモジュール(追加の道具)をインストールするためのコマンド。

スマホのアプリストアみたいなもので、追加機能が使えるようになる。

pip install tkinter

これで GUI に必要な部品が使えるようになる。

③ GUIとは?

GUI = グラフィックユーザーインターフェイス。

これは今まで使ってきた「黒い画面(CUI)」とは違って、ボタンや入力欄、画像などがある“見た目のあるアプリ”のこと。

step1でも少し出てきましたが、私たちが普段触っているアプリやWebサイトはほとんどがGUIです。

GUIでは「マウスでクリックする」「文字を入力する」など、視覚的に操作できるのが特徴です。

tkinter は、PythonでGUIアプリを作るための標準機能。

以下のコードで、シンプルなウィンドウと文字を表示できます。

import tkinter as tk

  root = tk.Tk()               # ウィンドウを作る
  root.title("Hello GUI")      # タイトルを設定

  label = tk.Label(root, text="こんにちは!")
  label.pack()                 # ラベルを表示する

  root.mainloop()              # ウィンドウを閉じずに待機
  

root がウィンドウの土台、mainloop() が「閉じずに待機し続ける」処理です。

④ defって何?

処理をひとまとめにする「関数」の定義方法。

レシピみたいなもの。

例えばカレーを作る時:

この一連の流れを 野菜を切る() って関数でまとめておけば、他の料理にも応用できるし何回でも使える!

def tashizan(a, b):
  return a + b

print(tashizan(5, 3))  # → 8

関数に名前を付けて定義して、呼び出すだけで中身を実行できる。

⑤ GUIでボタンと関数をつなぐ

ボタンを押すとラベルの内容が切り替わる処理も、関数で書いてスッキリ!

label = tk.Label(root, text="")
label.pack()

def say_hello():
  label.config(text="こんにちは!")

btn = tk.Button(root, text="あいさつ", command=say_hello)
btn.pack()

config() は「表示内容の更新」をしてくれる便利な命令。

⑥ じゃんけんアプリを作ってみよう

random を使えばランダムで結果を切り替えることもできる。

import random

hands = ["グー", "チョキ", "パー"]
result = random.choice(hands)

label = tk.Label(root, text="")
label.pack()

def play():
  label.config(text=result)

btn = tk.Button(root, text="じゃんけん!", command=play)
btn.pack()

📘 宿題(任意提出OK)

🎮 数字当てゲーム:仕様一覧

このアプリは「GUIでロジックを組む」「状態を管理する」など、学習の集大成になります!

コードレビュー希望者はファイル提出してくれたら、読みやすさ・改善点・工夫ポイントを一緒にチェックできます✨

← トップページに戻る