「画面に真っ赤なエラー文字が出てきて、もう心が折れそう……」
Pythonを触り始めて数日目、そんな風に画面をそっと閉じた経験はありませんか?
私も最初はそうでした。英語で怒られているみたいで少し怖いですよね。
今回は、Pythonプログラミングの基礎となる「データ型」について分かりやすくお話しします。この仕組みを把握していただくだけで、原因不明のエラーに対する苦手意識は自然と和らぎます。
データ型はExcelの「セルの書式設定」と同じイメージ
「データ型」という概念は、Excelにおける「セルの書式設定」をイメージしていただくと分かりやすいです。
Excelでも、日付を入力したセルを「数値」に設定してしまうと、意図しない数字(シリアル値)に変換されてしまいますよね。
Pythonも同じで、「これは文字列」「これは計算用の数値」と、コンピュータに対して適切な目印(ラベル)を指定してあげる必要があります。
初心者の段階で覚えておきたい基本的なラベルは、主に以下の3種類です。
1. 文字列(str型)
こちらは、文章や単語などの「テキスト情報」を指します。
Excelでいう「文字列」の設定であり、計算処理には使用しません。
Pythonでは、シングルクォーテーション(’)かダブルクォーテーション(”)で囲むというルールがあります。
- 例:’こんにちは’, ‘2025’
- 注意点: 数字であっても、クォーテーションで囲むと、Python側では「計算できないテキストとしての2025」として扱われます。
2. 数値(int型 / float型)
こちらは、四則演算などの「計算が行える数値」です。
文字列とは異なり、クォーテーションで囲まずにそのまま記述します。
- int(整数): 100, -5
- float(小数): 3.14, 0.5
- 「金額の集計」や「数量のカウント」を行う際には、こちらの型を用います。
3. 真偽値(bool型)
初めて耳にする名称かもしれませんが、構造としては最もシンプルな型になります。
「Yes(True)」か「No(False)」か、の2パターンのみとなります。
ExcelのIF関数で条件判定を行った際の「結果(一致しているかどうか)」をイメージしていただくと分かりやすいです。
なぜデータの種類を区別する必要があるのか?
「システム側で自動判別してくれれば良いのに」
そう思われるかもしれません。でも、想像してみてください。
「田中さん」+「3000円」 という計算を頼まれたら、どのように処理すべきか迷ってしまいませんか?
「田中さん3000円」と文字を繋げたいのか、それとも計算ミスなのか、私たち人間でも判断がつきません。
コンピュータも同じで、「文字列(str)」と「数値(int)」をそのまま足し算しようとすると、処理方法が定まらずに「TypeError」というエラーを出力してしまいます。
逆に言えば、この「種類の区別」さえあらかじめ意識しておくだけで、多くの初期エラーを未然に防ぐことができます。
コピペで試せる実践コード
百聞は一見に如かず。実際に動かしてみることで理解が深まります。以下のコードをGoogle Colaboratoryなどに貼り付けて実行し、データ型を確認してみましょう。
# データ型を確認してみよう
print("--- 型の確認 ---")
# 1. 文字列 (str)
text_data = '100'
print(f"値: {text_data} は {type(text_data)} です")
# 2. 数値 (int)
number_data = 100
print(f"値: {number_data} は {type(number_data)} です")
# 3. 真偽値 (bool)
flag_data = True
print(f"値: {flag_data} は {type(flag_data)} です")
print("\n--- よくあるエラーの実験 ---")
# 以下の行の先頭の # を消して実行するとTypeErrorになります
# print(text_data + number_data)
print("--- 正しい修正 ---")
# 文字を数値に変換(int化)して計算
print(int(text_data) + number_data) # 100 + 100 = 200 になる
まとめ:まずは3つの型を整理整頓してみよう
「データ型」という用語は難しく感じられますが、入門レベルでは「文字」「数字」「判定(Yes/No)」を正しく分類することにあります。
普段の業務で書類をファイルごとに分類するように、Pythonもデータを適切に整理整頓して受け取りたいだけなのです。
焦らず、まずはこの基本の3種類から少しずつ慣れていきましょう!
Pythonの本は種類が多すぎて、業務効率化に使えるのか見分けるのが大変ですよね。実務自動化に5年以上携わってきた私が、「デスクワークの自動化に即戦力になった本」を厳選して紹介します。失敗しない1冊を見つけたい方は、ぜひ参考にしてみてください。


コメント