2. 変数とデータ型の考え方を身に付けよう

前回は基本的なプログラムの書き方を学びました。今回は、プログラミングの重要な概念である「変数」と「データ型」について学んでいきましょう。

2.1 変数とは?数や文字を入れる「箱」のイメージ

変数は、データを一時的に保存できる「箱」のようなものです。例えば、次のように使います:

変数にデータを入れる(代入する)

# 変数にデータを入れる(代入する)
score = 85  # scoreという箱に85を入れる
name = "田中"  # nameという箱に"田中"を入れる

# 変数の中身を表示する
print(score)  # 85が表示される
print(name)   # 田中が表示される

変数のポイント

  • 箱(変数)には好きな名前をつけられる
  • 中身は後から変更できる
  • 一つの箱には一つの値しか入れられない
  • 入れた値は取り出して使える

変数の値を変更する例

# 変数の値を変更する例
score = 85
print("1回目のテスト:", score)
score = 92  # 同じ変数に新しい値を代入
print("2回目のテスト:", score)

2.2 整数・小数・文字列など、データ型を区別しよう

Pythonには主に以下のデータ型があります:

整数(int), 小数(float), 文字列(str)

# 整数(int)
age = 16
year = 2024

# 小数(float)
height = 170.5
weight = 58.3

# 文字列(str)
name = "鈴木"
message = '今日は晴れです'

# 型を確認するには type() を使う
print(type(age))     # <class 'int'>
print(type(height))  # <class 'float'>
print(type(name))    # <class 'str'>

よく使うデータ型の特徴

  • 整数(int):普通の整数。計算に使う
  • 小数(float):小数点がある数値。細かい計算に使う
  • 文字列(str):文字の並び。"か'で囲む

2.3 変数名の名付け方のポイント

良い変数名をつけることは、プログラムを分かりやすくする重要なポイントです。

変数名のルール

  1. 使って良いもの

    • アルファベット(a-z, A-Z)
    • 数字(ただし先頭には使えない)
    • アンダースコア(_)
  2. 使ってはいけないもの

    • 日本語の漢字・ひらがな(使えるけど避けよう)
    • スペース
    • 記号(_ 以外)
    • Pythonの予約語(if, forなど)

良い例と悪い例

# 良い例
student_name = "山田"
test_score = 85
total_price = 1200

# 悪い例
なまえ = "山田"      # 日本語は避ける
test score = 85    # スペースは使えない
1st_place = "金賞"  # 数字から始まれない

2.4 文字列を操作する(文字の連結・分割など)

文字列は様々な方法で操作できます:

文字列の連結(+)

# 文字列の連結(+)
first = "山田"
last = "太郎"
full_name = first + " " + last
print(full_name)  # 山田 太郎

# 文字列の繰り返し(*)
star = "★"
print(star * 3)  # ★★★

# 文字列の長さを調べる(len)
message = "Hello, World!"
print(len(message))  # 13

# 文字列の一部を取り出す
text = "Python"
print(text[0])   # P(最初の文字)
print(text[1:4]) # yth(2文字目から4文字目)

2.5 数字と文字の型変換をしてみよう

異なる型のデータを扱うときは、型変換が必要です:

文字列を数値に変換

# 文字列を数値に変換
age_str = "16"
age_num = int(age_str)    # 文字列→整数
print(age_num + 1)        # 17(計算できる)

# 数値を文字列に変換
score = 85
score_str = str(score)    # 数値→文字列
print("得点は" + score_str + "点です")

# 整数と小数の変換
height = int(170.5)    # 170(小数点以下切り捨て)
rate = float(80)       # 80.0(小数点付きに)

2.6 真偽値(True/False)と比較演算子で判断する

真偽値は「はい」「いいえ」を表す値です:

比較演算子の例

# 比較演算子の例
age = 16
print(age > 15)    # True(15より大きい)
print(age < 20)    # True(20より小さい)
print(age == 16)   # True(16と等しい)
print(age != 18)   # True(18と異なる)

# よく使う比較演算子
# ==  等しい
# !=  等しくない
# >   より大きい
# <   より小さい
# >=  以上
# <=  以下

# 複数の条件を組み合わせる
score = 85
print(score >= 80 and score <= 90)  # True(80以上90以下)

2.7 いろいろなデータ型を組み合わせる

実践的なプログラムでは、複数のデータ型を組み合わせて使います:

成績管理プログラムの例

# 成績管理プログラムの例
name = "山田太郎"
grade = 2
class_number = "A"
math_score = 92
english_score = 78
is_passed = True

# 情報を整形して表示
print("=== 成績情報 ===")
print("名前:" + name)
print("学年:" + str(grade))
print("クラス:" + class_number)
print("数学:" + str(math_score) + "点")
print("英語:" + str(english_score) + "点")
print("合格:" + str(is_passed))

課題 1. 名前と年齢を入力し、「あなたは ◯ 歳です」と表示するプログラム

名前と年齢を入力し、「あなたは ◯ 歳です」と表示するプログラム

# input()関数を使ってキーボードから入力を受け取る
name = input("お名前を入力してください:")
age = input("年齢を入力してください:")

# 入力された年齢は文字列なので、計算するときは数値に変換する
age_num = int(age)

print("こんにちは、" + name + "さん!")
print("あなたは" + age + "歳です")
print("来年は" + str(age_num + 1) + "歳になりますね")

チャレンジ!

  • 誕生年を計算して表示してみよう
  • 20歳まであと何年かを計算してみよう
  • 他にも色々な情報を入力・表示してみよう

課題 2. 2 つの数字を入力し、その合計を「◯ + ◯ = ◯」と表示するプログラム

2つの数字を入力し、その合計を「◯ + ◯ = ◯」と表示するプログラム

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

# 文字列から数値に変換
num1 = int(num1)
num2 = int(num2)

# 計算と表示
sum_result = num1 + num2
print(str(num1) + " + " + str(num2) + " = " + str(sum_result))

チャレンジ!

  • 引き算、掛け算、割り算も計算してみよう
  • 3つ以上の数字の計算もしてみよう
  • 小数点がある数字も計算してみよう

まとめ

この章では、プログラミングの基礎となる変数とデータ型について学びました。 ポイントは:

  • 変数は値を保存する「箱」
  • データ型によって扱い方が変わる
  • 型変換で異なる型のデータを扱える
  • input()で入力を受け取れる

次の章では、条件分岐について学び、プログラムで判断ができるようになります!