Pythonにおける配列の長さを理解する
James Reed
Infrastructure Engineer · Leapcell

Key Takeaways
len()
を使用して、Pythonのリストと配列の長さを取得します。- NumPy配列は、要素の合計数を表す
.size
を提供します。 - データ構造の選択は、長さの解釈に影響します。
Pythonで配列または類似のデータ構造を扱う場合、それらの長さを特定する方法を知ることは基本です。データを反復処理する、入力を検証する、または計算を実行するなど、コレクション内の要素数を取得する機能は不可欠です。この記事では、Pythonで配列の長さがどのように処理されるかを探り、リスト、array
モジュールの配列、およびNumPy配列の違いを明確にします。
リストとlen()
関数
Pythonで最も一般的に使用されるシーケンス型はリストです。リスト内の要素数を見つけるには、組み込みのlen()
関数を使用します。
my_list = [10, 20, 30, 40] print(len(my_list)) # 出力:4
len()
関数は、リスト内のアイテムの数を返します。このメソッドは効率的で、文字列、タプル、辞書、セットなど、リスト以外の多くのシーケンス型で機能します。
array
モジュール
Pythonリストは用途が広いですが、数値演算には最適化されていません。Pythonには、標準ライブラリにarray
モジュールが用意されており、同種(つまり、すべての要素が同じ型)のデータ型を格納する場合に、よりメモリ効率が高くなります。このモジュールを使用して作成された配列でもlen()
を使用できます。
import array my_array = array.array('i', [1, 2, 3, 4, 5]) print(len(my_array)) # 出力:5
'i'
はデータ型(符号付き整数)を指定します。リストと同様に、len()
は配列内の要素数を返します。
NumPy配列
科学計算および大規模な数値演算の場合、NumPyは頼りになるライブラリです。NumPy配列は、機能とパフォーマンスの点でPythonリストおよびarray.array
オブジェクトとは異なります。
NumPy配列内の要素数を見つけるには、len()
または.size
属性のいずれかを使用できます。
import numpy as np np_array = np.array([[1, 2, 3], [4, 5, 6]]) print(len(np_array)) # 出力:2(行数) print(np_array.size) # 出力:6(要素の総数) print(np_array.shape) # 出力:(2, 3)
ここで、len(np_array)
は最初の次元のサイズ(つまり、行数)を返し、.size
は配列全体の要素の総数を返します。.shape
属性は、配列の次元を提供します。
まとめ
Pythonで配列の長さを決定する方法を理解することは、使用しているデータ構造のタイプによって異なります。簡単な概要を次に示します。
データ構造 | 長さを取得する方法 | 注 |
---|---|---|
リスト | len(list) | 最も一般的で柔軟なPythonコンテナ |
array.array | len(array) | 同種データに最適化 |
NumPy ndarray | len(array) またはarray.size | len() は最初の次元を与え、.size は要素の総数を与えます |
適切なメソッドと構造を選択することはユースケースによって異なりますが、いずれの場合も、Pythonを使用するとコレクションのサイズを簡単に取得できます。
FAQs
組み込みのlen()
関数を使用します。
最初の次元のサイズ(例:行数)を返します。
.size
は要素の総数を返し、len()
は最初の軸のサイズのみを返します。
Pythonプロジェクトのホスティングに最適なLeapcellをご紹介します。
Leapcellは、Webホスティング、非同期タスク、およびRedis向けの次世代サーバーレスプラットフォームです。
多言語サポート
- Node.js、Python、Go、またはRustで開発します。
無制限のプロジェクトを無料でデプロイ
- 使用量に対してのみ支払い - リクエストも料金もかかりません。
比類のない費用対効果
- アイドル料金なしの従量課金制。
- 例:25ドルで、平均応答時間60msで694万リクエストをサポートします。
合理化された開発者エクスペリエンス
- 簡単なセットアップのための直感的なUI。
- 完全に自動化されたCI/CDパイプラインとGitOps統合。
- 実用的な洞察を得るためのリアルタイムのメトリックとロギング。
簡単なスケーラビリティと高性能
- 高い同時実行性を容易に処理するための自動スケーリング。
- 運用上のオーバーヘッドはゼロ - 構築に集中するだけです。
詳細については、ドキュメントをご覧ください。
Xでフォローしてください:@LeapcellHQ