Python 逆引き集 | Python基礎・実行環境:型変換する

Python Python
スポンサーリンク
スポンサーリンク

型変換する

Pythonでは「型変換(type conversion)」は、プログラミング初心者が必ず身につけるべき重要な基礎です。 型変換を理解すると、文字列 → 数値数値 → 文字列リスト → タプル など、データを自在に扱えるようになり、エラーの原因を減らすことができます。

ここでは、型変換をステップバイステップで丁寧に解説し、例題・テンプレートを交えて初心者でも迷わず使えるように説明します。

型変換の基本

Pythonには「組み込み型変換関数」が用意されており、次のように使います。

int()   # 整数に変換
float() # 小数に変換
str()   # 文字列に変換
list()  # リストに変換
tuple() # タプルに変換
bool()  # 真偽値に変換
Python

Pythonでは、これらの関数を使って明示的に型を変換することができます。

数値と文字列の型変換(最もよく使う)

文字列 → 整数

age = "20"
age = int(age)
Python

文字列 → 小数

price = "100.5"
price = float(price)
Python

整数 → 文字列

count = 5
text = str(count)
Python

深掘り:なぜ文字列のままでは計算できないのか

Pythonでは "20" は「数字に見える文字列」であり、計算できません。

"20" + 5  # ❌ TypeError
Python

必ず int()float() で数値に変換する必要があります。

リスト・タプル・セットの型変換

リスト → タプル

items = [1, 2, 3]
items_tuple = tuple(items)
Python

タプル → リスト

coords = (10, 20)
coords_list = list(coords)
Python

リスト → セット(重複削除に便利)

nums = [1, 2, 2, 3]
unique_nums = set(nums)
Python

深掘り:なぜセットにすると重複が消えるのか

セットは数学の「集合」と同じで、同じ値を複数持てないという性質があります。

真偽値(bool)への型変換

Pythonでは「空かどうか」で真偽値が決まります。

bool(0)      # False
bool("")     # False
bool([])     # False
bool(None)   # False

bool(1)      # True
bool("abc")  # True
bool([1,2])  # True
Python

深掘り:条件分岐でよく使う

if items:  # items が空でなければ True
    print("データがあります")
Python

実務でよく使う型変換の例

ユーザー入力(input)は必ず文字列

age = int(input("年齢を入力してください: "))
Python

CSVの数値を変換

row = ["Taro", "20", "Tokyo"]
name, age, city = row
age = int(age)
Python

APIレスポンス(JSON)

data = {"price": "100.5"}
price = float(data["price"])
Python

型変換テンプレート(そのまま使える)

数値変換

value = int(text)
value = float(text)
Python

文字列変換

text = str(value)
Python

リスト・タプル変換

lst = list(tpl)
tpl = tuple(lst)
Python

セット変換

unique = set(lst)
Python

初心者がつまずくポイント(深掘り)

① 数字に見える文字列は数値ではない

"100" + 50  # ❌
Python

② 小数を整数に変換すると切り捨てられる

int(10.9)  # 10
Python

③ 型変換できない文字列

int("abc")  # ❌ ValueError
Python

④ None を変換しようとしてエラー

int(None)  # ❌
Python

セキュリティ視点での型変換

型変換はセキュリティにも関係します。

① 外部入力は必ず検証する

ユーザー入力や外部データは「数字に見える文字列」でも危険です。

age = input("年齢: ")
if age.isdigit():
    age = int(age)
else:
    print("数字を入力してください")
Python

② 型が違うと意図しない動作が起きる

型の不一致はバグの原因になり、セキュリティホールにつながることがあります。

③ JSONの値はすべて Python の型とは限らない

APIレスポンスは文字列で返ってくることが多いため、必ず型変換が必要です。

まとめ

  • Pythonの型変換は int(), float(), str(), list(), tuple(), set(), bool() を使う
  • 文字列 → 数値変換は最もよく使う
  • リスト・タプル・セットの変換はデータ処理で必須
  • 真偽値変換は条件分岐で便利
  • 外部入力は必ず検証することで安全性が高まる

型変換を理解すると、Pythonで扱えるデータの幅が大きく広がり、エラーを減らし、安全で読みやすいコードが書けるようになります。

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