【len】Pythonで配列の要素の長さを取得する方法を解説

Python

本記事ではPythonで配列(リスト)の要素数を簡単に取得する方法について詳しく解説します。Pythonの標準機能であるlen関数を使えば、簡単に配列の長さを取得できます。

len関数とは

lenはPythonの組み込み関数で、配列の要素数を取得できます。配列だけでなく、シーケンス(リスト、タプル、文字列など)や集合(セット、辞書)の要素数も取得できます。

構文

len(オブジェクト)

lenは引数にオブジェクトを1つ取り、そのオブジェクトの長さを整数値として返します。

使い方

以下に、リストの長さを取得する基本的な例を示します。

fruits = ["りんご", "バナナ", "オレンジ", "ぶどう"]
length = len(fruits)
print(length)  # 出力: 4

empty_list = []
print(len(empty_list))  # 出力: 0

numbers = [1, 2, 3, 4, 5]
print(len(numbers))  # 出力: 5

文字列の長さを取得することもできます。

text = "Hello, Python!"
print(len(text))  # 出力: 14(スペースと記号も含む)

注意点

要素数のみを返す

len関数はオブジェクトの要素数のみを返し、内部の要素の値に対して操作を行いません。例えば、リスト内の数値の合計を求めたい場合はsum関数を使用する必要があります。

numbers = [10, 20, 30, 40, 50]
print(len(numbers))  # 出力: 5(要素数のみ)
print(sum(numbers))  # 出力: 150(要素の合計)

空リストの扱い

空のリストに対してlen関数を使用すると0が返されます。これはエラーにならないため、条件分岐で空リストかどうかを簡単に判定できます。

empty_list = []
if len(empty_list) == 0:
    print("リストは空です")  # 出力: リストは空です
else:
    print("リストには要素があります")

処理速度の特性

len関数は定数時間O(1)で動作するため、リストのサイズに関係なく高速です。これはPythonがリストのサイズを内部で常に追跡しているためで、大きなリストでも瞬時に要素数を取得できます。

# 100万要素のリストでも瞬時に長さを取得
large_list = list(range(1000000))
print(f"リストの長さ: {len(large_list)}")  # 出力: リストの長さ: 1000000

指定した要素のみの要素の数の場合

特定の要素がリスト内に何回出現するかを知りたい場合は、countメソッドを使用します。

numbers = [1, 2, 3, 1, 4, 1, 5]
count_of_ones = numbers.count(1)
print(count_of_ones)  # 出力: 3(数値1は3回出現)

fruits = ["りんご", "バナナ", "りんご", "オレンジ", "りんご"]
apple_count = fruits.count("りんご")
print(apple_count)  # 出力: 3("りんご"は3回出現)

配列が多次元の場合

多次元リスト(ネストされたリスト)の場合、外側のリストの長さは簡単に取得できますが、内側のリストについては個別に長さを取得する必要があります。

matrix = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9, 10]
]

# 外側のリストの長さ
outer_length = len(matrix)
print(outer_length)  # 出力: 3

# 各内側リストの長さ
for i, inner_list in enumerate(matrix):
    print(f"リスト{i}の長さ: {len(inner_list)}")
    # 出力:
    # リスト0の長さ: 3
    # リスト1の長さ: 3
    # リスト2の長さ: 4

すべての内側リストの長さが同じかどうかを確認するには、次のようにします。

all_same_length = all(len(inner) == len(matrix[0]) for inner in matrix)
print(all_same_length)  # 出力: False(この例では最後のリストの長さが異なる)

まとめ

Pythonのlen関数は、データ操作の基本ツールとして頻繁に活躍します。配列の長さ確認だけでなく、条件分岐や繰り返し処理の制御、データ検証など幅広い場面で利用できます。

実際の開発では、len関数とループを組み合わせたデータ処理や、空チェックによる堅牢なエラー処理の実装など、シンプルながらも多彩な活用法があります。Pythonの基本機能をマスターすることで、より効率的で読みやすいコードが書けるようになるでしょう。

タイトルとURLをコピーしました