Pythonでリストのサイズを調べる
リストは、順序付けされ、変更可能なコレクション データ型です。リストには重複したエントリが含まれる場合もあります。ここでのタスクは、リスト内のエントリの数を見つけることです。 パイソン 。
例:
Input: a = [1, 2, 3, 1, 2, 3] Output: 6 Explanation: The output is 6 because the number of entries in the list a is also 6.
この記事で説明する方法は次のとおりです。
len() メソッドを使用してリストのサイズを確認します。
リストはオブジェクトであり、そのサイズを格納するメンバーがあるため、len() は O(1) 時間で動作します。以下は len() の説明です。 Python ドキュメント 。
オブジェクトの長さ (項目数) を返します。引数はシーケンス (文字列、バイト、タプル、リスト、範囲など) またはコレクション (辞書、セット、またはフリーズ セットなど) の場合があります。
Python3
# Python program to demonstrate working of len()> a> => []> a.append(> 'Hello'> )> a.append(> 'Geeks'> )> a.append(> 'For'> )> a.append(> 'Geeks'> )> print> (> 'The length of list is: '> ,> len> (a))> |
出力
The length of list is: 4
sum() 関数を使用してリストの長さを求める
別のアプローチは、組み込みの sum() 関数 と組み合わせて ジェネレーター式。 これにより、特定の条件を満たすリスト内の要素の数を合計することでリストのサイズを知ることができます。
Python3
# list of numbers> numbers> => [> 1> ,> 2> ,> 3> ,> 1> ,> 2> ,> 3> ]> # find the size of the list> size> => sum> (> 1> for> num> in> numbers)> # print the size of the list> print> (size)> |
出力
6
リストには 6 つの要素が含まれているため、これは 6 を出力します。
時間計算量: sum() 関数とジェネレーター式を使用したアプローチの時間計算量は O(n) です。ここで、n はリストの長さです。
空間の複雑さ: このアプローチの補助空間の複雑さは O(1) です。これは、ジェネレーター式が処理中の現在の要素を格納するために必要な変数が 1 つだけであるためです。
forループを使ってリストの長さを調べる
このようにして、変数 count を初期化し、ループを通じて変数をインクリメントし、ループの終わりまでに count 変数内のリストの長さを取得します。
Python3
lst> => [> 1> ,> 1> ,> 2> ,> 5> ,> 1> ,> 5> ,> 2> ,> 4> ,> 5> ]> count> => 0> for> i> in> lst:> > count> +> => 1> print> (> 'The length of the lst is :'> ,count)> |
出力
The length of the lst is : 9
時間計算量: の上)
空間の複雑さ: ○(1)
を使用してリストのサイズを確認します。 length_hint()> 方法
の length_hint()> からの関数 operator> リストの長さを推定するモジュール。ただし、この関数は、特に標準的な Python リストの場合、リストの正確なサイズを提供することを保証していないことに注意してください。
の length_hint()> この関数は、反復可能オブジェクトの予想される長さに関するヒントを提供しますが、すべてのタイプの反復可能オブジェクトに対して正確であるとは限りません。以下に例を示します。
Python3
from> operator> import> length_hint> lst> => [> 'Geeks'> ,> 'For'> ,> 'Geeks'> ]> size> => length_hint(lst)> print> (> 'The size of the size lst:'> ,size)> |
出力
The size of the size lst: 3
時間計算量: の上)
空間の複雑さ: ○(1)