Python基礎の基礎|変数と型を優しく解説

Python初心者向けに変数と型の基本概念を分かりやすく解説。具体的なコード例とともに、変数の作り方から型の種類まで丁寧に説明します。

Learning Next 運営
16 分で読めます

Python基礎の基礎|変数と型を優しく解説

みなさん、Pythonを始めたばかりで「変数って何?」と思ったことはありませんか?

「型って何のこと?」 「プログラムでどう使うの?」 「覚えることが多くて大変そう」

こんな疑問を抱いている方は多いはずです。 でも心配いりません!

この記事では、変数と型の基本概念を初心者の方にも分かりやすく解説します。 具体的なコード例とともに、料理の材料に例えながら優しく説明していきます。

変数って何だろう?

変数とは、データを一時的に保存しておく「箱」のようなものです。 簡単に言うと、値に名前をつけて保管する仕組みです。

変数の基本的な考え方

# 変数の作成
name = "太郎"
age = 25

この例では、nameという箱に「太郎」という文字を入れています。 ageという箱には「25」という数字を入れています。

イメージとしては、ラベルの付いた箱に大切なものをしまっておく感じです。 後でそのラベルを見れば、何が入っているかすぐに分かりますよね。

変数を使うメリット

# 変数を使わない場合
print("こんにちは、太郎さん")
print("太郎さんは25歳です")
# 変数を使う場合
name = "太郎"
age = 25
print(f"こんにちは、{name}さん")
print(f"{name}さんは{age}歳です")

変数を使うと、同じ値を何度も書く必要がありません。 名前や年齢を変更したいときも、一箇所を変えるだけで済みます。

変数の作り方をマスターしよう

変数を作るときは、いくつかのルールがあります。 これらを覚えておくと、エラーを避けられます。

変数の命名ルール

# 良い変数名の例
user_name = "山田"
total_price = 1000
is_active = True
# 避けるべき変数名の例
# 1name = "山田" # 数字から始まってはダメ
# user-name = "山田" # ハイフンは使えない
# class = "A" # Pythonの予約語は使えない

変数名は以下の点に気をつけましょう:

  • 英字またはアンダースコア(_)で始める
  • 数字から始めない
  • ハイフンやスペースは使わない
  • 分かりやすい名前をつける

変数の値を変更してみよう

# 最初の値を設定
count = 0
print(count) # 0が表示される
# 値を変更
count = 5
print(count) # 5が表示される
# さらに変更
count = count + 1
print(count) # 6が表示される

変数の値は、プログラムの実行中にいつでも変更できます。 これがプログラムを動的にする重要な仕組みです。

Pythonの基本的な型を知ろう

型とは、データの種類を表します。 例えば、「文字」「数字」「真偽値」など、データにはそれぞれ異なる特徴があります。

主要な型の紹介

Pythonでは、以下のような基本的な型があります:

  • 文字列(str): 文字の集まり
  • 整数(int): 小数点のない数字
  • 小数(float): 小数点を含む数字
  • 真偽値(bool): 真か偽かを表す値

それぞれ詳しく見ていきましょう。

文字列型(str)を使ってみよう

# 文字列の例
name = "田中"
message = "こんにちは"
address = "東京都"
# 文字列を連結する
full_message = message + "、" + name + "さん"
print(full_message) # こんにちは、田中さん
# より読みやすい書き方
greeting = f"{message}{name}さん"
print(greeting) # こんにちは、田中さん

文字列はクォーテーション('または")で囲んで表現します。 f文字列を使うと、変数を文字列の中に簡単に埋め込めます。

整数型(int)を使ってみよう

# 整数の例
age = 30
count = 100
temperature = -5
# 整数の計算
total = age + count
print(total) # 130
# いろいろな計算
addition = 10 + 5 # 足し算: 15
subtraction = 10 - 3 # 引き算: 7
multiplication = 4 * 6 # 掛け算: 24
division = 15 // 3 # 割り算(整数): 5

整数型では、基本的な四則演算ができます。 プログラミングでは計算処理がよく使われるので、覚えておくと便利です。

小数型(float)を使ってみよう

# 小数の例
height = 170.5
weight = 65.2
price = 1980.0
# 小数の計算
bmi = weight / (height / 100) ** 2
print(f"BMI: {bmi:.2f}") # BMI: 22.51
# 小数と整数の計算
result = 10 + 3.5
print(result) # 13.5(結果は小数になる)

小数型は、より精密な計算をするときに使用します。 BMIの計算など、実数を扱う場面でよく登場します。

真偽値型(bool)を使ってみよう

# 真偽値の例
is_student = True
is_married = False
has_license = True
# 条件判定で使用
if is_student:
print("学生です")
else:
print("学生ではありません")
# 比較演算の結果
age = 20
is_adult = age >= 18
print(f"成人: {is_adult}") # 成人: True

真偽値は、「はい」か「いいえ」を表現するときに使います。 条件分岐やループ処理で重要な役割を果たします。

型を調べる便利な方法

プログラムを書いていると、変数がどの型なのか確認したくなることがあります。 そんなときに便利な関数を紹介します。

type()関数で型を確認

# 様々な型の変数を作成
name = "佐藤"
age = 25
height = 175.5
is_adult = True
# 型を確認
print(type(name)) # <class 'str'>
print(type(age)) # <class 'int'>
print(type(height)) # <class 'float'>
print(type(is_adult)) # <class 'bool'>

type()関数を使うと、変数がどの型なのかを調べられます。 デバッグやエラーの原因を探すときに役立ちます。

isinstance()関数で型をチェック

# 型のチェック
score = 85
if isinstance(score, int):
print("scoreは整数です")
print(f"scoreの値: {score}")
else:
print("scoreは整数ではありません")
# 複数の型をチェック
def check_data_type(data):
if isinstance(data, str):
return f"文字列: {data}"
elif isinstance(data, int):
return f"整数: {data}"
elif isinstance(data, float):
return f"小数: {data}"
else:
return f"その他の型: {data}"
# テスト
test_data = ["hello", 42, 3.14, True]
for data in test_data:
print(check_data_type(data))

isinstance()関数は、特定の型かどうかを確認するのに便利です。 より安全なプログラムを書くために活用できます。

型の変換をマスターしよう

プログラムを書いていると、型を変換したくなることがよくあります。 Pythonでは、簡単に型変換ができます。

自動型変換の仕組み

# 整数と小数の計算
result = 10 + 3.5
print(result) # 13.5(自動的に小数になる)
print(type(result)) # <class 'float'>
# 異なる型の演算
number = 5
text = "回"
# result = number + text # エラーになる!

Pythonでは、計算のときに自動的により精密な型に変換されます。 ただし、文字列と数値の直接計算はエラーになるので注意しましょう。

手動型変換の方法

# 文字列を数値に変換
age_str = "25"
age_int = int(age_str)
print(age_int + 5) # 30
# 数値を文字列に変換
count = 10
count_str = str(count)
print("合計: " + count_str + "個") # 合計: 10個
# 小数を整数に変換
price = 1980.8
price_int = int(price)
print(price_int) # 1980(小数点以下切り捨て)
# 文字列を小数に変換
height_str = "170.5"
height_float = float(height_str)
print(height_float + 5.0) # 175.5

型変換を使うことで、異なる型のデータを組み合わせて処理できます。 ユーザー入力の処理などでよく使われる技術です。

実践的な例で理解を深めよう

変数と型を組み合わせて、実用的なプログラムを作ってみましょう。

商品価格計算プログラム

# 商品の価格計算
product_name = "ノートパソコン"
unit_price = 89800
quantity = 2
tax_rate = 0.1
# 計算処理
subtotal = unit_price * quantity
tax = subtotal * tax_rate
total = subtotal + tax
# 結果を表示
print(f"商品名: {product_name}")
print(f"単価: ¥{unit_price:,}")
print(f"数量: {quantity}個")
print(f"小計: ¥{subtotal:,}")
print(f"消費税: ¥{tax:,.0f}")
print(f"合計: ¥{total:,.0f}")

この例では、文字列、整数、小数を組み合わせて実用的な計算を行っています。 実際のレジシステムでも似たような処理が使われています。

ユーザー情報管理システム

# ユーザー情報の管理
user_id = 1001
user_name = "山田太郎"
user_age = 28
is_premium = True
balance = 15750.50
last_login = "2024-07-07"
# 会員種別の判定
member_type = "プレミアム" if is_premium else "一般"
# 年齢カテゴリの判定
if user_age < 20:
age_category = "10代"
elif user_age < 30:
age_category = "20代"
elif user_age < 40:
age_category = "30代"
else:
age_category = "40代以上"
# 情報の表示
print(f"ユーザーID: {user_id}")
print(f"名前: {user_name}")
print(f"年齢: {user_age}歳({age_category})")
print(f"会員種別: {member_type}会員")
print(f"残高: ¥{balance:,.0f}")
print(f"最終ログイン: {last_login}")

実際のWebアプリケーションやシステムでよく使われるデータ管理のパターンです。 複数の型を適切に使い分けることで、効率的なプログラムが作れます。

よくある間違いと対処法

プログラミング初心者がよく遭遇する問題と、その解決方法を紹介します。

型の不一致エラー

# エラーが発生する例
age = "25" # 文字列
# result = age + 5 # TypeError: can't concatenate str and int
# 正しい書き方
age = "25"
result = int(age) + 5 # 先に型変換する
print(result) # 30
# より安全な書き方
def safe_add(text_num, add_num):
try:
return int(text_num) + add_num
except ValueError:
print(f"'{text_num}'は数値に変換できません")
return None
# テスト
print(safe_add("25", 5)) # 30
print(safe_add("abc", 5)) # エラーメッセージが表示される

型の不一致は初心者がよく遭遇するエラーです。 事前に型変換を行うか、エラーハンドリングを追加しましょう。

変数名の間違い

# 正しい例
user_name = "田中"
print(user_name) # 田中
# よくある間違い
user_name = "田中"
# print(username) # NameError: name 'username' is not defined
# デバッグのコツ
def show_variables():
"""現在の変数を確認する関数"""
local_vars = locals()
print("現在定義されている変数:")
for name, value in local_vars.items():
print(f" {name}: {value} ({type(value).__name__})")
user_name = "田中"
user_age = 30
show_variables()

変数名のスペルミスはよくある問題です。 エディタの自動補完機能を活用したり、変数名を確認する習慣をつけましょう。

まとめ:基礎を固めて次のステップへ

Python の変数と型について、重要なポイントをまとめましょう。

今回学んだ重要なポイント

変数と型で覚えておきたいことです:

  • 変数: データを保存する「箱」のような仕組み
  • : データの種類(文字列、整数、小数、真偽値)
  • 型変換: 必要に応じてデータの型を変更する技術
  • エラー対策: 型の不一致や変数名の間違いに注意

実践で活用できる場面

日常的なプログラミングでよく使う場面です:

  • データ入力: ユーザーからの入力を適切な型で処理
  • 計算処理: 商品価格や統計値の計算
  • 条件判定: 年齢や権限による処理の分岐
  • データ管理: ユーザー情報や設定値の保存

次のステップへ

変数と型をマスターしたら、以下の内容も学んでみましょう:

  • リストとタプル: 複数のデータをまとめて管理
  • 辞書: キーと値のペアでデータを整理
  • 関数: 処理をまとめて再利用可能にする
  • 条件分岐とループ: プログラムの流れを制御

変数と型は、Pythonプログラミングの土台となる重要な概念です。 最初は慣れないかもしれませんが、実際にコードを書いて練習することで身につきます。

まずは簡単な計算プログラムから始めて、徐々に複雑な処理にも挑戦してみてください。 今日から実践して、Pythonプログラミングの第一歩を踏み出しましょう!

関連記事