この記事では、整数型(int)と浮動小数点数型(float)の基本的な使い方と使い分けについて詳しく解説する。
Pythonの数値型の基本概念
Pythonには主に2つの数値型が存在する。整数型(int)と浮動小数点数型(float)だ。それぞれ異なる特徴と用途を持っている。
整数型(int)の特徴
整数型は、小数点を含まない数値を表現するためのデータ型だ。正の数、負の数、そしてゼロを扱うことができる。
# 整数型の基本的な宣言
positive_num = 42 # 正の整数
negative_num = -100 # 負の整数
zero = 0 # ゼロ
# 大きな数値も扱える
big_number = 123456789012345678901234567890
print(type(big_number)) #
# 型の確認
print(type(positive_num)) #
Pythonの整数型の素晴らしいところは、サイズ制限がないことだ。
他の言語では大きな数を扱う際に特別な型が必要になることがあるが、Pythonはメモリが許す限り大きな整数を扱える。
浮動小数点数型(float)の特徴
浮動小数点数型は、小数点を含む数値を表現するためのデータ型だ。
# 浮動小数点数型の基本的な宣言
pi = 3.14159 # 小数
temperature = -5.5 # 負の小数
scientific = 1.23e-4 # 科学記法(0.000123)
# 整数でも小数点(.)をつけるとfloat型になる
float_zero = 0.0
print(type(float_zero)) #
# 型の確認
print(type(pi)) #

【Udemy】Python入門講座(0からPythonの基礎を体系的に学んで、生成AIでバイブコーディング)
受講生3000人ほどの人気講座。Pythonの基礎から生成AI活用までを20時間ほどで一気に学びます。業務で活かせるPythonの基礎知識はしっかりと身につきます。
数値型の基本演算
整数型と浮動小数点数型では、同じ演算子を使っても結果の型が変わることがある。
これを理解することで、予期しないエラーを防げる。
整数型の演算
整数同士の演算では、多くの場合結果も整数になる。ただし、除算(/)は例外だ。
x = 10
y = 3
print(x + y) # 加算: 13 (int型)
print(x - y) # 減算: 7 (int型)
print(x * y) # 乗算: 30 (int型)
print(x / y) # 除算: 3.3333... (float型になる!)
print(x // y) # 整数除算: 3 (int型、小数点以下切り捨て)
print(x % y) # 余り: 1 (int型)
print(x ** y) # べき乗: 1000 (int型)
# 型の確認
print(type(x / y)) # class 'float'
print(type(x // y)) # class 'int'
浮動小数点数型の演算
浮動小数点数が含まれる演算では、結果は基本的に浮動小数点数型になる。
x = 10.5
y = 3.2
print(x + y) # 加算: 13.7
print(x - y) # 減算: 7.3
print(x * y) # 乗算: 33.6
print(x / y) # 除算: 3.28125
print(x // y) # 整数除算: 3.0 (結果はfloat型)
print(x % y) # 剰余: 0.8999999999999995
print(x ** y) # べき乗: 1852.7027964066515...
# 整数と浮動小数点数の混合演算
result = 10 + 3.5 # 13.5 (float型)
print(type(result)) # class 'float'
型変換の重要性と実践
プログラムを書いていると、整数型と浮動小数点数型を相互に変換する必要が生じる。Pythonでは、ビルトイン関数を使って簡単に型変換ができる。
数値型から文字列への変換
数値を文字列として扱いたい場合、str()関数を使用する。
# 数値から文字列への変換
number_int = 42
number_float = 3.14159
str_int = str(number_int) # "42"
str_float = str(number_float) # "3.14159"
print(f"整数: {str_int}, 型: {type(str_int)}")
print(f"小数: {str_float}, 型: {type(str_float)}")
# 文字列連結での活用
message = "価格は" + str(1000) + "円です"
print(message) # 価格は1000円です
文字列から数値への変換
文字列を数値に変換する際は、int()やfloat()関数を使用する。ただし、変換できない文字列を渡すとエラーになるので注意が必要だ。
# 文字列から数値への変換
str_number = "123"
str_decimal = "45.67"
# 正常な変換
int_result = int(str_number) # 123 (int型)
float_result = float(str_decimal) # 45.67 (float型)
print(f"変換結果: {int_result}, 型: {type(int_result)}")
print(f"変換結果: {float_result}, 型: {type(float_result)}")
# 注意:変換できない文字列
try:
invalid = int("abc") # ValueError が発生
except ValueError as e:
print(f"エラー: {e}")
int()とfloat()の相互変換
数値型同士の変換は、データの損失に注意しながら行う。
# float から int への変換(小数点以下切り捨て)
pi = 3.14159
int_pi = int(pi) # 3 (小数点以下切り捨て)
negative = int(-2.8) # -2 (小数点以下切り捨て)
# int から float への変換
integer = 100
float_integer = float(integer) # 100.0
実践的な数値計算プログラム
これまで学んだ知識を活用して、実際の計算処理を含むプログラムを作成してみよう。
# 消費税計算プログラム
print("=== 消費税計算システム ===")
# ユーザーから価格を入力
price_str = input("商品の価格を入力してください: ")
price = int(price_str) # 文字列を整数に変換
# 税率設定(浮動小数点数)
tax_rate = 0.10 # 10%の消費税
# 税額計算(浮動小数点数での計算)
tax_amount = price * tax_rate
total_price = price + tax_amount
print(f"\n--- 計算結果 ---")
print(f"税抜価格: {price:,}円")
print(f"消費税額: {tax_amount:.2f}円")
print(f"税込価格: {total_price:.2f}円")
# 整数での税込価格(一般的な表示方法)
total_price_int = int(total_price)
print(f"税込価格(整数表示): {total_price_int:,}円")
# 割り勘計算
people_str = input("\n何人で割り勘しますか?: ")
people = int(people_str)
per_person = total_price / people
per_person_rounded = int(per_person)
print(f"一人あたり: {per_person:.2f}円")
print(f"一人あたり(整数): {per_person_rounded:,}円")
このプログラムでは、整数型で価格を扱い、浮動小数点数型で税率計算を行い、最終的に表示用に適切な型に変換している。

【Udemy】Python入門講座(0からPythonの基礎を体系的に学んで、生成AIでバイブコーディング)
受講生3000人ほどの人気講座。Pythonの基礎から生成AI活用までを20時間ほどで一気に学びます。業務で活かせるPythonの基礎知識はしっかりと身につきます。
整数型(int)を使う場面:
・カウント処理(商品数、人数など)
・インデックス指定(リストの位置など)
・ID番号や整数で表現される値
・ループ回数の制御
浮動小数点数型(float)を使う場面:
・割合や比率(税率、成功率など)
・測定値(身長、体重、温度など)
・科学技術計算
・精密な計算が必要な処理