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 変数名の名付け方のポイント
良い変数名をつけることは、プログラムを分かりやすくする重要なポイントです。
変数名のルール
-
使って良いもの
- アルファベット(a-z, A-Z)
- 数字(ただし先頭には使えない)
- アンダースコア(_)
-
使ってはいけないもの
- 日本語の漢字・ひらがな(使えるけど避けよう)
- スペース
- 記号(_ 以外)
- 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()で入力を受け取れる
次の章では、条件分岐について学び、プログラムで判断ができるようになります!