Pythonでは、変数にさまざまな種類のデータを格納できます。
このデータ型には、整数(int)、浮動小数点数(float)、文字列(str)、論理値(bool)のような基本的な型から、リスト(list)、タプル(tuple)、辞書(dict)、集合(set)といった複雑な型まで、幅広い種類があります。
この記事では、変数とデータ型について詳しく説明し、それぞれの使い方や特徴を解説します。
1. 変数とは?
変数とは、プログラム内でデータを一時的に保存しておくための名前(ラベル)のことです。変数は、Pythonプログラムのどこからでも参照でき、値を保存・操作するために使います。
変数の定義
x = 10 # 変数xに10を代入
name = "Alice" # 変数nameに文字列を代入
変数は、代入演算子(=)を使って値を設定します。Pythonは動的型付けの言語であるため、変数に格納されるデータ型を明示する必要はありません。Pythonが自動的に適切なデータ型を判断します。
2. 整数型(int)
int 型は、Pythonで整数を表します。正の整数、負の整数、ゼロなどを扱うことができます。
例:
x = 10 # 正の整数
y = -5 # 負の整数
z = 0 # ゼロ
特徴:
-
整数同士の基本的な算術演算(加算、減算、乗算、除算)が可能です。
-
任意の大きさの整数を扱うことができます。
演算の例:
a = 10 + 5 # 15
b = 10 - 3 # 7
c = 10 * 2 # 20
d = 10 // 3 # 3(整数除算)
e = 10 % 3 # 1(余り)
3. 浮動小数点数型(float)
float 型は、小数を含む実数を扱います。小数点を使った数値や、指数表記で表される非常に大きな数値も扱えます。
例:
x = 3.14 # 小数
y = -2.5 # 負の小数
z = 1.0e5 # 指数表記で100000.0を表す
特徴:
-
浮動小数点数を使った算術演算が可能です。
-
整数と浮動小数点数を混ぜた計算では、結果は常に浮動小数点数になります。
演算の例:
a = 1.5 + 2.5 # 4.0
b = 5.0 / 2 # 2.5(小数を含む結果)
4. 文字列型(str)
str 型は、文字列を扱うデータ型です。文字列は、文字の並びで、引用符(シングルクォート ‘ ‘ またはダブルクォート ” “)で囲まれます。
例:
greeting = "Hello"
name = 'Alice'
特徴:
-
文字列の結合や繰り返し、部分文字列の取得などの操作が可能です。
-
文字列は不変(変更できない)です。
文字列操作の例:
full_greeting = greeting + ", " + name # "Hello, Alice"(文字列の結合)
repeated = name * 3 # "AliceAliceAlice"(文字列の繰り返し)
first_letter = name[0] # "A"(インデックスでアクセス)
5. 論理型(bool)
bool 型は、真(True) または**偽(False)**を表すデータ型です。主に条件分岐や論理演算に使用されます。
例:
is_true = True
is_false = False
特徴:
-
真偽値は、条件式や論理演算の結果として生成されます。
-
他のデータ型(int や float など)を bool() 関数で変換すると、0や空のオブジェクトは False、それ以外は True になります。
例:
result = (5 > 3) # True
result = (10 == 10) # True
6. リスト型(list)
list 型は、可変長のシーケンスを表します。リストは複数の要素を持つことができ、その要素は変更可能です。要素の型はすべて同じである必要はありません。
例:
numbers = [1, 2, 3, 4, 5]
mixed = [1, "Alice", 3.14, True]
特徴:
-
リストは順序付きで、重複を許可します。
-
要素の追加、削除、スライスなどの操作が可能です。
操作の例:
numbers.append(6) # [1, 2, 3, 4, 5, 6](要素の追加)
numbers[1] = 10 # [1, 10, 3, 4, 5, 6](要素の変更)
sliced = numbers[1:4] # [10, 3, 4](スライス)
7. タプル型(tuple)
tuple 型は、不変のシーケンスを表します。リストと似ていますが、一度作成されたら変更できない点が異なります。
例:
coordinates = (10, 20)
person_info = ("Alice", 30, "New York")
特徴:
-
タプルは順序付きで、重複を許可します。
-
要素の変更はできませんが、タプル自体を変更することはできます。
操作の例:
x, y = coordinates # 座標のアンパック(複数変数に値を分解)
8. 辞書型(dict)
dict 型は、キーと値のペアでデータを保持します。キーはユニークであり、値にアクセスするために使われます。
例:
person = {"name": "Alice", "age": 30, "city": "New York"}
特徴:
-
辞書は順序を保持し、キーは重複を許可しません。
-
値は可変であり、変更、追加、削除が可能です。
操作の例:
print(person["name"]) # "Alice"(キーを使って値を取得)
person["age"] = 31 # {"name": "Alice", "age": 31, "city": "New York"}(値の変更)
person["job"] = "Engineer" # {"name": "Alice", "age": 31, "city": "New York", "job": "Engineer"}(新しいペアの追加)
9. 集合型(set)
set 型は、重複しない要素の集まりを表します。順序は保証されません。
例:
unique_numbers = {1, 2, 3, 4, 4, 5} # 重複する要素は自動的に1つにまとめられる
特徴:
-
集合は重複を許さず、順序を保持しません。
-
集合演算(和、積、差など)が可能です。
操作の例:
unique_numbers.add(6) # {1, 2, 3, 4, 5, 6}(要素の追加)
unique_numbers.remove(4) # {1, 2, 3, 5, 6}(要素の削除)
set1 = {1, 2, 3}
set2 = {3, 4, 5}
union = set1 | set2 # {1, 2, 3, 4, 5}(和集合)
intersection = set1 & set2 # {3}(積集合)
まとめ
Pythonの変数とデータ型には、さまざまな用途に応じた型があります。
-
int: 整数を扱う。
-
float: 小数を扱う。
-
str: 文字列を扱う。
-
bool: 論理値(True/False)を扱う。
-
list: 複数の要素を持つ可変のシーケンスを扱う。
-
tuple: 複数の要素を持つ不変のシーケンスを扱う。
-
dict: キーと値のペアを持つデータを扱う。
-
set: 重複しない要素の集まりを扱う。
コメント