Python | 1 日 60 分 × 7 日アプリ学習:超初級編

APP Python
スポンサーリンク

最初の7日間で「Pythonで小さなアプリを自力で書ける」状態までを目標にします。
毎日「読む→真似して打つ→自分で少し変えてみる」の流れで、だいたい60分を想定しています。


1日目:Pythonって何?最初の一歩と「print」

今日のゴール

Pythonの動かし方と、画面に文字や数字を表示する基本「print」を理解します。
コードを書くときの「怖さ」をとにかく減らす日です。

Pythonプログラムの正体を知る

Pythonのファイルは、ただのテキストです。
メモ帳のようなエディタで

print("こんにちは、Python")
Python

のように書いて保存し、Pythonに「このファイルを実行して」とお願いすると、Pythonが一行ずつ読んで動かします。
「Pythonに命令を並べたメモ」がプログラムだとイメージしてください。

最初のコード:Hello, World

新しいファイルを作って、次のように書いてみてください。

print("Hello, World!")
Python

保存して実行すると、画面に

Hello, World!

と出ます。
ここで押さえておきたいポイントは3つです。

1つ目のポイント:printは「表示しろ」という命令

print は「かっこの中身を画面に出して」という命令です。

print("こんにちは")
print(123)
Python

これは

  • 「文字列(文字のならび)を表示」
  • 「数値を表示」

という意味になります。

2つ目のポイント:かっこ () の中が「printの対象」

print("A", "B", "C")
Python

とかくと、"A""B""C" が並んで表示されます。

A B C

かっこの中に何を書くかで、結果が変わるとイメージしてください。

3つ目のポイント:ダブルクォーテーション " " の意味

print("123")
print(123)
Python

上の2つは、見た目は似ていますが意味が違います。

  • "123" は「文字としての 123」
  • 123 は「数字としての 123」

です。今日は「文字は " " で囲む」とだけ覚えておけばOKです。

1日目の練習

次のようなプログラムを自分で作ってみてください。

例題1:自己紹介をプリントする

print("私の名前は山田です")
print("趣味はゲームです")
print("Pythonを勉強中です")
Python

例題2:簡単な日記をプリントする

print("2025年12月27日")
print("今日はPythonの勉強を始めた")
print("少し不安だけど、ワクワクもしている")
Python

行を増やしたり、文章を変えたりして、自由に遊んでみてください。


2日目:変数とデータ型(数字と文字)

今日のゴール

「変数は、名前のついた箱」という感覚をつかみ、
数字と文字を変数に入れて使えるようになります。

変数って何者?

変数は「値を入れておく箱」だと思ってください。
箱には「名前」をつけられます。

age = 25
name = "太郎"
Python

これは、

  • age という箱に 25 を入れる
  • name という箱に "太郎" を入れる

という意味です。
後で print(age)print(name) と書けば、その中身を取り出せます。

age = 25
name = "太郎"

print(age)   # 25
print(name)  # 太郎
Python

重要ポイント:イコール = の本当の役割

数学の = は「左と右が等しい」という意味ですが、
プログラミングの = は「右の値を左の変数に入れる」という意味です。

x = 10
x = x + 5
Python

2行目は、「今のxの値(10)に5を足して、その結果(15)をもういちどxに入れ直す」という意味です。
だから、print(x) は 15 になります。

ここが初学者がつまずきやすいポイントなので、コードを変えながら何度も打ってみてください。

数字と文字の違いを体感する

数字(数値)の例:

price = 120
tax = 10
total = price + tax

print(total)  # 130
Python

文字列の例:

first_name = "山田"
last_name = "太郎"
full_name = first_name + last_name

print(full_name)  # 山田太郎
Python

数字の + は「足し算」、
文字の + は「くっつける(連結)」になります。

2日目の練習

例題1:買い物の合計金額

apple_price = 120
banana_price = 150
total_price = apple_price + banana_price

print("合計金額は")
print(total_price)
print("円です")
Python

例題2:自己紹介文を変数から作る

name = "佐藤"
age = 30
message = name + "さんは" + str(age) + "歳です"

print(message)
Python

ここで出てきた str(age) は、「数字を文字に変換する」命令です。
数字と文字を + でつなぐときは、片方を str() で文字に変える必要があります。


3日目:inputで「会話」するプログラム

今日のゴール

キーボードから値を入力して、その値を使って動くプログラムを作れるようになります。

inputの基本

input は「ユーザーに何か聞く」命令です。

name = input("あなたの名前は?:")
print("こんにちは、" + name + "さん")
Python

実行すると、画面に

あなたの名前は?:

と出て、入力待ちになります。
名前を打って Enter を押すと、その文字が name に入り、あいさつ文が表示されます。

重要ポイント:inputの戻り値は「文字列」

input が返す値は、必ず「文字(文字列)」です。

age = input("あなたの年齢は?:")
print(age + 5)  # ← これはエラー
Python

これはエラーになります。age は文字列だから、数字の 5 と足し算はできません。

数字として扱いたいときは、int() で整数に変換します。

age_text = input("あなたの年齢は?:")
age = int(age_text)
next_year = age + 1

print("来年は" + str(next_year) + "歳ですね")
Python

ここで大切なのは、

  • input → 文字列
  • 数字にしたい → int(文字列)
  • 逆に文字にしたい → str(数字)

という変換の流れです。

3日目の練習

例題1:簡単な足し算アプリ

a_text = input("1つ目の数字を入力してください:")
b_text = input("2つ目の数字を入力してください:")

a = int(a_text)
b = int(b_text)

answer = a + b

print("合計は" + str(answer) + "です")
Python

例題2:自己紹介メッセージジェネレーター

name = input("名前を入力してください:")
hobby = input("趣味を入力してください:")

message = "私は" + name + "です。趣味は" + hobby + "です。"
print(message)
Python

文章を工夫して、自分っぽいメッセージを出してみてください。


4日目:if文で「条件分岐」してみる

今日のゴール

「もし〜なら〜する」という処理が書けるようになります。
ここから一気に「アプリっぽさ」が出てきます。

if文の基本形

シンプルな形はこうです。

if 条件:
    条件が本当のときに実行する処理
Python

Pythonでは、行頭のインデント(空白・タブでの字下げ)がとても重要です。
if の行の下を、スペース4つぶん右にずらして書くことで、「このブロックは if に属しています」という意味になります。

例:

age = int(input("あなたの年齢は?:"))

if age >= 20:
    print("お酒を飲める年齢です")
Python

重要ポイント:インデントは「かたまり」を表す

次の2つは、意味がまったく違います。

age = int(input("年齢は?:"))

if age >= 20:
    print("成人です")
    print("お酒を飲めます")
Python

この場合、age >= 20 のときに2行とも実行されます。

age = int(input("年齢は?:"))

if age >= 20:
    print("成人です")
print("お酒を飲めます")
Python

こちらは、

  • if の条件に関係なく、最後の print("お酒を飲めます") が必ず実行されます。

インデントの位置で「どこまでが if の中か」が決まる、という感覚をここでしっかり掴んでください。

if / else / elif

条件が偽のときに別の処理をしたい場合は else を使います。

age = int(input("年齢は?:"))

if age >= 20:
    print("成人です")
else:
    print("未成年です")
Python

条件が2つ以上あるときは elif を使います。

score = int(input("点数を入力してください:"))

if score >= 80:
    print("よくできました")
elif score >= 60:
    print("合格です")
else:
    print("残念でした")
Python

上から順に条件をチェックして、最初に当てはまったところだけが実行されます。

4日目の練習

例題1:年齢でメッセージを変える

  • 0〜12歳:「子どもです」
  • 13〜19歳:「ティーンです」
  • 20歳以上:「大人です」

というメッセージを出すプログラムを書いてみてください。

例(答えの一例):

age = int(input("年齢は?:"))

if age <= 12:
    print("子どもです")
elif age <= 19:
    print("ティーンです")
else:
    print("大人です")
Python

区切りの数字やメッセージを自分なりに変えて、遊んでみましょう。


5日目:whileとforで「繰り返し」を覚える

今日のゴール

同じ処理を何度も繰り返す「ループ」の基本を理解します。

while文:条件が真の間、繰り返す

while は「〜の間、繰り返す」です。

count = 1

while count <= 5:
    print(count)
    count = count + 1
Python

このプログラムは、

  1. count が 1 から始まる
  2. count <= 5 が本当の間、print(count) を実行してから count に 1 を足す
  3. 6 になったら条件が偽になるので終了

という流れで、1〜5を表示します。

ここで大事な2点は、

  • どこかで条件が偽になるように、変数を変化させる
  • それを忘れると「無限ループ」になる(永遠に終わらない)

ということです。

for文:決まった回数をきっちり回す

for は「何回かきっちり回したい」ときに便利です。

for i in range(5):
    print(i)
Python

range(5) は、「0, 1, 2, 3, 4」という5つの数字の集まりです。
for i in range(5): は、「その集まりから1つずつ i に取り出して、ブロックを実行する」という意味になります。

つまり、画面には

0
1
2
3
4

と出ます。

1〜5にしたい場合はこう書きます。

for i in range(1, 6):
    print(i)
Python

range(開始, 終了の手前まで) というルールです。

5日目の練習

例題1:あいさつを3回表示

for i in range(3):
    print("こんにちは")
Python

例題2:1〜10の合計を計算する

total = 0

for i in range(1, 11):
    total = total + i

print("合計は" + str(total) + "です")
Python

total = total + i の意味がピンとこなければ、紙に書いて追いかけてみてください。
「今のtotalに i を足して、またtotalに入れる」という繰り返しです。


6日目:リスト(配列)とforの組み合わせ

今日のゴール

複数の値をまとめて扱う「リスト」を理解し、for文で1つずつ処理できるようになります。

リストの基本

リストは「順番つきの箱の並び」です。

scores = [80, 90, 75]
names = ["佐藤", "鈴木", "高橋"]
Python

[] の中に、カンマ区切りで値を並べます。

1つずつ取り出すには「インデックス(番号)」を使います。
番号は0から始まります。

scores = [80, 90, 75]

print(scores[0])  # 80
print(scores[1])  # 90
print(scores[2])  # 75
Python

forと組み合わせて全部処理する

リストの中身を1つずつ処理するとき、for がとても便利です。

scores = [80, 90, 75]

for score in scores:
    print(score)
Python

これは、「scoresの中から1つずつ取り出して、scoreという変数に入れ、printする」という意味です。

重要ポイント:forの「入れ物」の名前は自由

for score in scores:
Python

score は、好きな名前で構いません。

for s in scores:
Python

でも動きます。
ただし、意味の分かる名前をつけた方が、後で読みやすくなります。

6日目の練習

例題1:リストの名前を順に表示

names = ["佐藤", "鈴木", "高橋"]

for name in names:
    print(name + "さん、こんにちは!")
Python

例題2:点数リストの平均を求める

scores = [80, 90, 75, 60]

total = 0
for score in scores:
    total = total + score

average = total / len(scores)

print("平均点は" + str(average) + "点です")
Python

ここで出てきた len(scores) は、「リストの長さ」を返す関数です。
要素の個数を自動で数えてくれます。


7日目:超簡単アプリを作ってみる(ミニ診断アプリ)

今日のゴール

これまで学んだ print, 変数, input, if, for, リストを組み合わせて、小さなアプリを完成させます。

ここでは例として「簡単な性格診断アプリ」を作ります。
実用性よりも、「つなぎ合わせて1つの作品にする」ことが目的です。

アプリの流れを日本語で考える

コードを書く前に、日本語で流れを書き出します。

  1. あいさつを表示
  2. ユーザーの名前を聞く
  3. いくつかの質問をする(Yes/No)
  4. 回答の数に応じてメッセージを変える
  5. 結果を表示する

この「日本語でアルゴリズムを書く」作業が、実はとても重要です。
いきなりコードから入らない、という癖をつけると上達が早くなります。

コード全体(まずはコピペでOK)

print("簡単性格診断アプリへようこそ!")

name = input("あなたの名前を入力してください:")
print(name + "さん、こんにちは。これから3つの質問をします。")
print("y か n で答えてください。")

questions = [
    "新しいことに挑戦するのが好きですか?",
    "一人の時間もわりと好きですか?",
    "計画を立てて物事を進める方ですか?"
]

yes_count = 0

for q in questions:
    answer = input(q + " (y/n):")

    if answer == "y":
        yes_count = yes_count + 1
    elif answer == "n":
        pass
    else:
        print("y か n で答えてください。(今回はカウントしません)")

print("診断結果:")

if yes_count == 3:
    print("とても計画的でチャレンジ精神のあるタイプです!")
elif yes_count == 2:
    print("バランスのよいタイプです!")
elif yes_count == 1:
    print("マイペースに進むタイプかもしれません。")
else:
    print("自分の世界を大事にするタイプかもしれません。")

print(name + "さん、診断は以上です。ありがとうございました!")
Python

重要部分を分解して理解する

質問をリストでまとめる

questions = [
    "新しいことに挑戦するのが好きですか?",
    "一人の時間もわりと好きですか?",
    "計画を立てて物事を進める方ですか?"
]
Python

ここでは3つの質問を、リストでまとめています。
質問を増やしたければ、このリストに文字列を追加するだけで済みます。

forで質問を1つずつ出す

for q in questions:
    answer = input(q + " (y/n):")
Python

questions の中から順に取り出して、q という変数に入れています。
その qinput のメッセージに使うことで、同じ形の質問を繰り返せます。

yの数をカウントする

yes_count = 0

if answer == "y":
    yes_count = yes_count + 1
Python

yes_count は「Yesの数を数えるカウンター」です。
Yesのたびに1ずつ増やしていき、最後に合計で診断します。

結果の分岐

if yes_count == 3:
    ...
elif yes_count == 2:
    ...
elif yes_count == 1:
    ...
else:
    ...
Python

Yesの数によって、結果メッセージを変えています。
ここを書き換えることで、アプリの「性格」が変わります。

発展:自分なりに改造してみる

時間が余ったら、次のような改造をしてみてください。

  • 質問を5個に増やす
  • 結果パターンをもっと細かくする
  • 名前を結果メッセージにも入れる
  • 質問文やメッセージを全部自分の言葉に変える

ここまでできれば、「超初級」は十分クリアです。


この7日間のあと、どう続けるか

ここから先は、

  • 関数(def)で処理をまとめる
  • ファイルに保存したり読み込んだりする
  • 外部ライブラリを使ってみる

などに進んでいくと、できることが一気に広がります。

タイトルとURLをコピーしました