配列array.count(string)は配列内のすべての要素をカウントするのではなく、stringの出現数を検索するだけなので、配列内の要素の数をカウントするにはどうすればよいですか。
メソッドlen()は、リスト内の要素の数を返します。
構文:
len(myArray)
例えば:
myArray = [1, 2, 3]
len(myArray)
出力:
3
len
は、指定されたコンテナオブジェクトの__len__
メンバー関数を呼び出してオブジェクト内の要素の数を取得する組み込み関数です。
通常、二重アンダースコアで囲まれた関数は、Python(コンテナ、番号など)の標準インターフェイスの1つを実装する「特別なメソッド」です。特別なメソッドは、構文のシュガー(オブジェクトの作成、コンテナーのインデックス作成とスライス、属性アクセス、組み込み関数など)を介して使用されます。
obj.__len__()
を使用することは、特別なメソッドを使用する正しい方法ではありませんが、他のメソッドがそれほど大幅に変更された理由はわかりません。
多次元配列がある場合、len()は探している値を提供しない可能性があります。例えば:
a = np.arange(10).reshape(2, 5)
print len(a) == 2
このコードブロックはtrueを返し、配列のサイズが2であることを示します。ただし、実際にはこの2D配列には10個の要素があります。多次元配列の場合、len()は配列のfirst次元の長さを示します。
len(a) == np.shape(a)[0]
任意の形状の多次元配列の要素数を取得するには:
size = 1
for dim in np.shape(a): size *= dim
または、
myArray.__len__()
おっとなりたい場合; 「len(myArray)」は入力がはるかに簡単です! :)
これを見る前に、私は「これを行う方法を作る必要がある!」と思いました。
for tempVar in arrayName: tempVar+=1
そして、「これを行うにはもっと簡単な方法が必要だ」と思いました。そして私は正しかった。
len(arrayName)