基礎

Pythonのデータ型|int・float・str・boolの基本を理解する

Pythonには様々なデータ型が用意されています。数値を扱うintfloat、文字列を扱うstr、真偽値のboolなど、プログラミングの基礎となるデータ型を理解することは非常に重要です。

この記事では、Pythonの基本的なデータ型とその特徴、型変換の方法について詳しく解説します。

基本的なデータ型

Pythonの代表的なデータ型は以下の4つです。

Python
# int(整数型)
count = 42
negative = -10
big_number = 1_000_000  # アンダースコアで桁区切り

# float(浮動小数点数型)
price = 19.99
pi = 3.14159
scientific = 1.5e3  # 1500.0

# str(文字列型)
name = "Python"
message = '学習を始めよう'

# bool(真偽値型)
is_valid = True
is_empty = False

print(f"int: {count}, 型: {type(count)}")
print(f"float: {price}, 型: {type(price)}")
print(f"str: {name}, 型: {type(name)}")
print(f"bool: {is_valid}, 型: {type(is_valid)}")
実行結果
int: 42, 型: <class 'int'>
float: 19.99, 型: <class 'float'>
str: Python, 型: <class 'str'>
bool: True, 型: <class 'bool'>

型変換(キャスト)

異なるデータ型同士で計算したり結合したりする場合、型変換が必要になることがあります。Pythonでは関数を使って明示的に型を変換できます。

Python
# 文字列から数値へ
age_str = "25"
age = int(age_str)
print(age + 5)  # 30

# 数値から文字列へ
score = 95
message = "得点は" + str(score) + "点です"
print(message)

# intからfloatへ
x = float(10)
print(x)  # 10.0

# floatからintへ(小数点以下切り捨て)
y = int(3.7)
print(y)  # 3

# 数値からboolへ
print(bool(0))    # False
print(bool(1))    # True
print(bool(-5))   # True
実行結果
30
得点は95点です
10.0
3
False
True
True
型変換エラーに注意

数値に変換できない文字列を int()float() に渡すと ValueError が発生します。例えば int("abc") はエラーになります。ユーザー入力を変換する際は、try-except で例外処理を行いましょう。

文字列の基本操作

文字列型は特に使用頻度が高いため、基本的な操作を覚えておきましょう。

Python
# 文字列の結合
first = "Hello"
second = "World"
greeting = first + " " + second
print(greeting)

# 文字列の繰り返し
line = "-" * 20
print(line)

# 文字列の長さ
text = "Python入門"
print(f"文字数: {len(text)}")

# インデックスでアクセス
word = "Python"
print(word[0])   # 先頭
print(word[-1])  # 末尾

# スライス
print(word[0:3])  # Pyt
print(word[2:])   # thon
実行結果
Hello World
--------------------
文字数: 8
P
n
Pyt
thon

None型

Pythonには「値がない」ことを表す特別な型 None があります。他の言語の nullnil に相当します。

Python
result = None
print(result)
print(type(result))

# Noneの判定は is を使う
if result is None:
    print("値が設定されていません")

# bool変換ではFalseになる
print(bool(None))  # False
実行結果
None
<class 'NoneType'>
値が設定されていません
False
Falsy な値

Pythonでは、00.0""(空文字列)、[](空リスト)、NoneFalse はすべてbool変換で False になります。これらを「Falsyな値」と呼びます。if文の条件式でそのまま使えるため、覚えておくと便利です。

まとめ

  • Pythonの基本データ型は int(整数)、float(小数)、str(文字列)、bool(真偽値)
  • int(), float(), str(), bool() で型変換ができる
  • 文字列は + で結合、[] でインデックスアクセスが可能
  • None は「値がない」ことを表す特別な型
  • type()関数で変数のデータ型を確認できる