【Python】配列の要素数を数える方法|次元に応じたコードを紹介

※本サイトにはプロモーション・広告が含まれています。

(最終更新日:2023年6月)

✔このような方へ向けて書かれた記事となります

「Pythonで配列の要素数を知りたい」
「配列の要素数の取得方法を学びたい」
「Pythonでの配列要素数取得の実例を見たい」

✔当記事を通じてお伝えすること

  • Pythonでの配列の要素数の基本知識
  • Pythonで配列の要素数を取得する方法やその応用
  • 配列要素数取得の実例

当記事では、Pythonでの配列要素数取得の基本から応用まで、具体的な例を交えてわかりやすく解説しています。

ぜひ最後までお読みください。

筆者プロフィール

筆者プロフィールアイコン

【現職】プロダクトマネージャー

【副業】ブログ(月間20万PV)/YouTube/Web・アプリ制作

「プログラミング × ライティング × 営業」の経験を活かし、30後半からのIT系職へシフト。現在はプロダクトマネージャーとして、さまざまな関係者の間に入り奮闘してます。当サイトでは、実際に手を動かせるWebアプリの開発を通じて、プログラミングはもちろん、IT職に必要な情報を提供していきます。

【当ブログで紹介しているサイト】

当サイトチュートリアルで作成したデモ版日報アプリ

Django × Reactで開発したツール系Webアプリ

✔人に見せても恥ずかしくないコードを書こう

「リーダブルコード」は、わかりやすく良いコードの定義を教えてくれる本です。

  • 見るからにきれいなコードの書き方
  • コードの分割方法
  • 変数や関数の命名規則

エンジニアのスタンダートとすべき基準を一から解説しています。

何回も読むのに値する本なので、ぜひ手にとって読んでみてください。

リスト要素数の取得方法

こちらでは、Pythonのリストにおける要素数の取得方法についてお伝えしていきます。

リストの要素数を知ることで、ループ処理やインデックス操作を適切におこなえるでしょう。

  • 1次元リストの要素数
  • 2次元リストの要素数
  • 多次元リストの要素数

1次元リストの要素数

1次元リストとは、一列に要素が並んでいるリストです。

例として、[1, 2, 3, 4, 5]があります。

1次元リストの要素数は、len()関数を使用して簡単に取得できます。

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

2次元リストの要素数

2次元リストは、リストの中にリストが含まれている構造です。

表のような形になります。

2次元リストの要素数を取得するには、外側のリストの長さと内側のリストの長さをそれぞれ取得します。

例:

my_2d_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
outer_length = len(my_2d_list)
inner_length = len(my_2d_list[0])
print(outer_length, inner_length) # 出力: 3 3

多次元リストの要素数

多次元リストは、リストの中にさらに多数のリストが含まれている構造です。

多次元リストの要素数を取得するには、再帰的なアプローチが必要になることがあります。

def get_element_count(lst):
    count = 0
    for element in lst:
        if isinstance(element, list):
            count += get_element_count(element)
        else:
            count += 1
    return count

# 3次元の多次元リストの要素数を取得する例
my_list = [1, [2, [3, 4]], [5, 6, [7, 8, 9]]]
count = get_element_count(my_list)
print("要素数:", count)

エラーについて

こちらでは、リストを操作する際によく遭遇するエラーとその解決方法についてお伝えしていきます。

  • インデックスエラー
  • 型エラー
  • 値エラー

インデックスエラー

インデックスエラーは、リストの範囲外のインデックスにアクセスしようとしたときに発生します。

このエラーは非常に一般的で、プログラマーがリストのサイズを誤って推定した場合によく起こるもの。

解決方法としては、インデックスがリストの範囲内にあることを確認することが重要です。

例えば、次のコードはインデックスエラーを引き起こします。

my_list = [1, 2, 3]
print(my_list[3])  # インデックスは0から始まるため、この行はエラーを引き起こす

この例では、インデックス3の要素にアクセスしようとしているが、リストはインデックス0から始まるため、最後の要素はインデックス2である。

型エラー

型エラーは、不適切な型のオブジェクトをリストに格納しようとした場合や、リストに対して不適切な操作を行おうとした場合に発生します。

これを解消するためには、使用している変数やオブジェクトの型を確認し、互換性のある型を使用することが重要です。

以下は、型エラーの例です。

my_list = [1, 2, 3]
my_list + 4  # これはエラーを引き起こす。リストと整数は連結できない。

このコードは、リストと整数を直接連結しようとしており、これはPythonでは許されていない。

値エラー

値エラーは、リスト内で存在しない値を検索しようとしたときや、不適切な値を操作しようとした場合に発生します。

値がリスト内に存在するかどうかを確認したり、適切な値を使用することで解消できます。

次のコードは値エラーの一例です。

my_list = [1, 2, 3]
my_list.remove(4)  # 値4はリストに存在しないため、この行はエラーを引き起こす

この例では、removeメソッドを使用してリストから値4を削除しようとしていますが、リストにはその値が存在しないため、値エラーが発生します。

例題で理解を深める

こちらでは、1次元リストと2次元リストを使った具体的な例題を通じて、理解を深めていきます。

  • 1次元リストの例題
  • 2次元リストの例題

1次元リストの例題

1次元リストは、単一のリストで、その中に複数の要素を持てます

ここでは、1次元リストを使って数値の平均を求める例を見てみましょう。

numbers = [4, 5, 2, 9, 7]
total = sum(numbers)
average = total / len(numbers)
print("Average:", average)

sum関数を使用してリスト内の数値の合計を計算し、len関数で要素数を取得しています。

2次元リストの例題

2次元リストは、リストの中にリストが含まれている構造です。

ここでは、2次元リストを使用して、行列の各行の合計を計算する例を見てみましょう。

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

for row in matrix:
    total = sum(row)
    print("Row total:", total)

このコードでは、2次元リストmatrixをループで反復処理し、各行の合計を計算して出力しています。

おわりに

当記事では、リスト要素数の取得方法について学び、リスト操作時に遭遇する一般的なエラーとその解決方法について理解しました。

実例を通じて1次元リストと2次元リストの操作も解説しています。

リストはプログラミングにおいて非常に重要なデータ構造であるため、これらの知識は実践的なコーディングにおいて役立つことが多いです。

今後もリスト操作を積極的に活用し、スキルを磨いていきましょう。

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