ホームページ  >  記事  >  バックエンド開発  >  Pythonの配列とリストの違い

Pythonの配列とリストの違い

(*-*)浩
(*-*)浩オリジナル
2019-06-25 15:45:4728931ブラウズ

Python のリストは Python の組み込みデータ型です。リスト内のデータ型は同じである必要はありませんが、配列内の型はすべて同じである必要があります。リストのデータ型は、データが格納されているアドレスを保存します。簡単に言うと、データではなくポインタです。このようにリストを保存するのは面倒です。たとえば、list1=[1,2,3, 'a'] には 4 つのポインターと 4 つのデータが必要で、ストレージが増加し、CPU が消費されます。 numpy でカプセル化された配列には非常に強力な機能があり、同じデータ型が格納されます。

Pythonの配列とリストの違い

Python 自体には配列型はありませんが、 Numpy ライブラリには配列型があります。 推奨学習: Python ビデオ チュートリアル )

どちらも多次元配列の処理に使用できます。

Numpy の ndarray オブジェクトは、多次元配列の処理に使用され、高速かつ柔軟なビッグ データ コンテナーとして機能します。 Python のリストは 1 次元配列を格納でき、リストをネストすることで多次元配列を実現できます。

2 ストレージ効率と入出力パフォーマンスは異なります。

Numpy は、配列の操作と計算用に特別に設計されています。ストレージ効率と入出力のパフォーマンスは、Python のネストされたリストよりもはるかに優れています。配列が大きくなるほど、Numpy の利点はより明白になります。

3要素のデータ型。

一般に、Numpy 配列内のすべての要素の型は同じである必要がありますが、Python リスト内の要素の型は任意であるため、一般的なパフォーマンスの点で Numpy 配列は Python リストほど良くありません。しかし科学計算では、多くのループ ステートメントを節約でき、コードの使用法は Python リストよりもはるかに簡単です。

配列の作成

Numpy 配列を作成する場合、パラメーターはリストまたはタプルのいずれかになります。例:

>>> a=np.array((1,2,3))#参数是tuple
>>> b=np.array([6,7,8])#参数是list
>>> c=np.array([[1,2,3],[4,5,6]])#参数是二维list

さらに、numpy が提供する他のメソッドを使用して配列を作成することもできます。たとえば:

>>> arr1=np.arange(1,10,1)
>>> arr2=np.linspace(1,10,10)

np.arange(a,b,c) は、 a-b の配列 c の間隔で b を含む配列。デフォルトのデータ型は int32 です。しかし、linspace(a,b,c) は、a-b を b を含む c 点に均等に分割することを意味します。

Python 関連の技術記事の詳細については、Python チュートリアル 列にアクセスして学習してください。

以上がPythonの配列とリストの違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。