リストの生成
リストは、Pythonで非常に便利に使えるデータ型の一つで、複数の要素を順序付けて保持することができます。リストの生成は簡単で、多くの異なる方法でリストを定義することができます。本記事では、Pythonのリストの生成方法と基本的な操作について解説します。
リストの基本的な生成方法
Pythonでは、リストは角括弧 []
を使って生成します。中にカンマで区切った要素を指定して、リストを作ることができます。
# 空のリストを生成
empty_list = []
# 要素を含むリストを生成
fruits = ["apple", "banana", "cherry"]
# 異なる型の要素を持つリスト
mixed_list = [1, "apple", True]
これらのリストは、それぞれ空のリスト、果物の名前が入ったリスト、異なる型の要素が混在したリストです。
リストの長さを調べる
リストの要素数(長さ)を調べるには、len()
関数を使用します。
# リストの長さを調べる
print(len(fruits)) # 出力: 3
このコードでは、リストfruits
の長さが3
であることが確認できます。
リストの生成方法のバリエーション
Pythonでは、他にもいくつかの方法でリストを生成することができます。以下はその例です。
- リスト内包表記を使って、リストを効率的に生成する方法。
- range()関数を使って、特定の範囲の整数リストを生成する方法。
# リスト内包表記を使ってリストを生成
squares = [x ** 2 for x in range(1, 6)]
print(squares) # 出力: [1, 4, 9, 16, 25]
# range()関数を使ってリストを生成
numbers = list(range(10))
print(numbers) # 出力: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
リスト内包表記は、簡潔なコードで新しいリストを生成するための強力な方法です。range()
関数は、指定した範囲内の整数を生成するのに便利です。
リストのコピーと参照
リストを別の変数に代入すると、そのリストの参照をコピーします。つまり、元のリストと新しいリストは同じオブジェクトを指します。新しいリストを生成するには、リストのコピーが必要です。
# 参照のコピー
list1 = [1, 2, 3]
list2 = list1
list2[0] = 100
print(list1) # 出力: [100, 2, 3]
# リストのコピー
list3 = list1[:]
list3[0] = 500
print(list1) # 出力: [100, 2, 3]
print(list3) # 出力: [500, 2, 3]
この例では、list1
をlist2
に代入すると、両方が同じオブジェクトを指します。しかし、スライスを使ってコピーを作成した場合、list3
は独立したリストとして振る舞います。
リストの要素にアクセスする
リストの各要素には、インデックスを使ってアクセスできます。インデックスは0から始まり、負のインデックスを使って逆方向から要素にアクセスすることもできます。
# リストの要素にアクセス
first_fruit = fruits[0] # "apple"
last_fruit = fruits[-1] # "cherry"
print(first_fruit) # 出力: "apple"
print(last_fruit) # 出力: "cherry"
このように、リストの要素にはインデックスを使って簡単にアクセスできます。
まとめ
Pythonのリストは柔軟で使いやすいデータ型であり、さまざまな方法で生成し、操作することが可能です。基本的なリストの生成から、リスト内包表記やrange()
関数を利用した高度なリストの生成方法まで、多くのバリエーションを学びました。次回はリストの操作や並び替えなど、さらに応用的なリスト操作について解説します。