logo

Python 配列

簡単にするために、Python 配列を、各ステップに値が配置される一連の階段として考えることができます (たとえば、友人の 1 人だとします)。ここでは、友人の歩数を知るだけで友人の位置を特定できます。配列は、Python では array という名前のモジュールによって処理できます。これらは、特定のデータ型の値のみを操作する必要がある場合に役立ちます。ユーザーはリストを配列として扱うことができます。ただし、ユーザーはリストに格納される要素のタイプを制限することはできません。 array モジュールを使用して Python 配列を作成する場合、Python の配列のすべての要素は同じ型である必要があります。この記事では、Python で配列を使用する方法を例を挙げて説明します。

Pythonの配列とは何ですか?

配列は、連続したメモリ位置に格納されている項目のコレクションです。アイデアは、同じ種類の複数のアイテムを一緒に保管することです。これにより、ベース値、つまり配列の最初の要素のメモリ位置 (通常は配列の名前で示されます) にオフセットを追加するだけで、各要素の位置を計算することが容易になります。



Python で配列を作成する

Python の配列は、配列モジュールをインポートすることで作成できます。 配列( データ・タイプ 値リスト ) は、引数で指定されたデータ型と値リストを使用して Python で配列を作成するために使用されます。

以下のコード Python で配列を作成します。 整数 そしてそのうちの1つ ダブルス 。次に、各配列の内容をコンソールに出力します。



文字列を比較するJava
Python3
import array as arr a = arr.array('i', [1, 2, 3]) print('The new created array is : ', end=' ') for i in range(0, 3): print(a[i], end=' ') print() b = arr.array('d', [2.5, 3.2, 3.3]) print('
The new created array is : ', end=' ') for i in range(0, 3): print(b[i], end=' ')>

出力
The new created array is : 1 2 3 The new created array is : 2.5 3.2 3.3>

配列作成の複雑さ:

時間計算量: ○(1)
補助スペース: の上)

Python 3.8 での配列の作成に役立つデータ型のいくつかを以下に示します。

さまざまなデータ型の。



次に、Python 3.8 で配列を使用する方法を例を挙げて説明します。

配列への要素の追加

組み込みを使用して要素を Python 配列に追加できます 入れる() 関数。 Insert は、1 つ以上のデータ要素を配列に挿入するために使用されます。要件に基づいて、配列の先頭、末尾、または任意のインデックスに新しい要素を追加できます。 追加() は、引数で指定された値を Python 配列の末尾に追加するためにも使用されます。

以下のコードでは、最初に 配列 モジュールとして Python として配列をインポート 到着しました 。次に、という名前の整数の配列を作成します。 ある 要素付き [1、2、3] 。以下のコードでは、整数の挿入の前後に配列が印刷されるようにPythonで配列を印刷します。 4 インデックス 1 にあります。同様に、要素を含む b という名前の double の配列 [2.5、3.2、3.3] double を追加する前後に作成および印刷されます。 4.4 配列に。

Python3
import array as arr a = arr.array('i', [1, 2, 3]) print('Array before insertion : ', end=' ') for i in range(0, 3): print(a[i], end=' ') print() a.insert(1, 4) print('Array after insertion : ', end=' ') for i in (a): print(i, end=' ') print() b = arr.array('d', [2.5, 3.2, 3.3]) print('Array before insertion : ', end=' ') for i in range(0, 3): print(b[i], end=' ') print() b.append(4.4) print('Array after insertion : ', end=' ') for i in (b): print(i, end=' ') print()>

出力
Array before insertion : 1 2 3 Array after insertion : 1 4 2 3 Array before insertion : 2.5 3.2 3.3 Array after insertion : 2.5 3.2 3.3 4.4>

配列に要素を追加する場合の複雑さ

時間計算量: O(1)/O(n) ( O(1) – 配列の末尾に要素を挿入する場合、O(n) – 配列の先頭と配列全体に要素を挿入する場合
補助スペース: ○(1)

配列からの要素へのアクセス

配列項目にアクセスするには、インデックス番号を参照します。 Python で配列内の項目にアクセスするには、インデックス演算子 [ ] を使用します。インデックスは整数である必要があります。

以下のコードでは、まず Python で配列をインポートする方法と、配列内の要素にアクセスするためのインデックスの使用方法を示します。のa[0]>式は配列の最初の要素にアクセスしますa>、これは 1 です。a[3]>式は配列の 4 番目の要素にアクセスしますa>、これは 4 です。同様に、b[1]>式は配列の 2 番目の要素にアクセスしますb>、これは 3.2 であり、b[2]>式は配列の 3 番目の要素にアクセスしますb>、つまり 3.3 です。

Python3
import array as arr a = arr.array('i', [1, 2, 3, 4, 5, 6]) print('Access element is: ', a[0]) print('Access element is: ', a[3]) b = arr.array('d', [2.5, 3.2, 3.3]) print('Access element is: ', b[1]) print('Access element is: ', b[2])>

出力:

Access element is: 1 Access element is: 4 Access element is: 3.2 Access element is: 3.3>

配列内の要素にアクセスするための複雑さ

時間計算量: ○(1)
補助スペース: ○(1)

配列からの要素の削除

組み込み関数を使用して Python 配列から要素を削除できます 取り除く() 関数を使用しますが、セット内に要素が存在しない場合はエラーが発生します。 Remove() メソッドは一度に 1 つの要素のみを削除します。要素の範囲を削除するには、反復子が使用されます。 ポップ() 関数を使用して配列から要素を削除して返すこともできますが、デフォルトでは配列の最後の要素のみが削除され、配列の特定の位置から要素を削除するには、要素のインデックスが引数として渡されます。 Pop()メソッド。
注記 - List の Remove メソッドは、検索された要素の最初の出現のみを削除します。

以下のコードは、Python で配列をインポートする方法、Python で配列の要素を作成、印刷、削除し、要素にアクセスする方法を示しています。輸入するのは、array>配列を操作するために使用されるモジュール。整数の配列を作成し、Python で配列を出力するか、元の配列を出力します。次に、配列から要素を削除し、変更された配列を出力します。最後に、配列から特定の要素の出現をすべて削除し、更新された配列を出力します。

Python3
import array arr = array.array('i', [1, 2, 3, 1, 5]) print('The new created array is : ', end='') for i in range(0, 5): print(arr[i], end=' ') print('
') print('The popped element is : ', end='') print(arr.pop(2)) print('The array after popping is : ', end='') for i in range(0, 4): print(arr[i], end=' ') print('
') arr.remove(1) print('The array after removing is : ', end='') for i in range(0, 3): print(arr[i], end=' ')>

出力
The new created array is : 1 2 3 1 5 The popped element is : 3 The array after popping is : 1 2 1 5 The array after removing is : 2 1 5>

配列内の要素を削除するための複雑さ

時間計算量: O(1)/O(n) ( O(1) – 配列の末尾の要素を削除する場合、O(n) – Python 作成配列の先頭にある要素を削除し、配列全体まで削除する場合
補助スペース: ○(1)

配列のスライス

Python 配列では、すべての要素を含む配列全体を出力する方法が複数ありますが、配列から特定の範囲の要素を出力するには、次の方法を使用します。 スライス操作 。配列に対してコロン(:)を使用してスライス操作を実行します。要素を先頭から範囲まで出力するには [:Index] を使用し、要素を末尾から出力するには [:-Index] を使用します。特定の Index から最後までの要素を出力するには [Index:] を使用します。範囲内の要素を出力するには [開始インデックス:終了インデックス] を使用し、スライス操作を使用してリスト全体を出力するには、[:] を使用します。さらに、配列全体を逆の順序で出力するには、[::-1] を使用します。

このコードは、スライスを使用して配列から要素または部分配列を抽出します。これは、整数の初期配列から始まり、リストから配列を作成します。このコードは配列をスライスしてインデックス 3 から 8 まで、インデックス 5 から最後までの要素を抽出し、配列全体を抽出します。以下のコードでは Python print array as としてスライスされた配列が印刷され、スライス操作を示します。

Python3
import array as arr l = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] a = arr.array('i', l) print('Initial Array: ') for i in (a): print(i, end=' ') Sliced_array = a[3:8] print('
Slicing elements in a range 3-8: ') print(Sliced_array) Sliced_array = a[5:] print('
Elements sliced from 5th ' 'element till the end: ') print(Sliced_array) Sliced_array = a[:] print('
Printing all elements using slice operation: ') print(Sliced_array)>

出力
Initial Array: 1 2 3 4 5 6 7 8 9 10 Slicing elements in a range 3-8: array('i', [4, 5, 6, 7, 8]) Elements sliced from 5th element till the end: array('i', [6, 7, 8, 9, 10]) Printing all elements...>

配列内の要素の検索

配列内の要素を検索するには、組み込みの Python を使用します。 索引() 方法。この関数は、引数で指定された値が最初に出現したインデックスを返します。

例: このコードは、Python で配列を作成し、その要素を出力し、特定の要素のインデックスを検索する方法を示しています。輸入するのは、array>モジュールを使用して、整数の配列を作成し、for ループを使用して配列を出力し、index()>整数 2 と 1 が最初に出現するインデックスを見つけるメソッド。

Python3
import array arr = array.array('i', [1, 2, 3, 1, 2, 5]) print('The new created array is : ', end='') for i in range(0, 6): print(arr[i], end=' ') print('
') print('The index of 1st occurrence of 2 is : ', end='') print(arr.index(2)) print('The index of 1st occurrence of 1 is : ', end='') print(arr.index(1))>

出力
The new created array is : 1 2 3 1 2 5 The index of 1st occurrence of 2 is : 1 The index of 1st occurrence of 1 is : 0>

配列内の要素を検索するための複雑さ

時間計算量: の上)
補助スペース: ○(1)

charからintへ

配列内の要素の更新

配列内の要素を更新するには、更新したいインデックスに新しい値を再割り当てするだけです。

例: このコードは、インデックスを使用して配列内の要素を変更する機能を示しています。輸入するのは、array>モジュールは、整数の配列を作成し、初期配列を出力します。次に、特定のインデックスにある配列の 2 つの要素を変更し、更新された配列を出力します。これは、インデックス付けによって配列内容の動的な操作がどのように可能になるかを示しています。

Python3
import array arr = array.array('i', [1, 2, 3, 1, 2, 5]) print('Array before updation : ', end='') for i in range(0, 6): print(arr[i], end=' ') print('
') arr[2] = 6 print('Array after updation : ', end='') for i in range(0, 6): print(arr[i], end=' ') print() arr[4] = 8 print('Array after updation : ', end='') for i in range(0, 6): print(arr[i], end=' ')>

出力
Array before updation : 1 2 3 1 2 5 Array after updation : 1 2 6 1 2 5 Array after updation : 1 2 6 1 8 5>

配列内の要素を更新するための複雑さ

時間計算量: の上)
補助スペース: ○(1)

Python 配列に対するさまざまな操作

配列内の要素を数える

配列内の要素を数えるには、count メソッドを使用する必要があります。

例: このコードは、配列内の特定の要素の頻度を決定する方法を示しています。輸入するのは、array>モジュールは、Python で配列を作成するために整数の配列を作成し、count()>メソッドを実行し、最後に結果を出力します。このコード スニペットは、配列内の要素の分布を分析する機能を効果的に示しています。

Python3
import array my_array = array.array('i', [1, 2, 3, 4, 2, 5, 2]) count = my_array.count(2) print('Number of occurrences of 2:', count)>

出力
Number of occurrences of 2: 3>

配列内の要素をカウントするための複雑さ

時間計算量: の上)
補助スペース: ○(1)

配列内の要素を反転する

配列の要素を反転するには、reverse メソッドを使用するだけです。

例: 提示されたコードは、 reverse()> 方法。輸入するのは、array>モジュール、整数の配列を作成し、元の配列を出力し、要素の順序を反転します。reverse()>、そして反転された配列を出力します。これは、配列内の要素の配置を変更できることを効果的に示しています。

Python3
import array my_array = array.array('i', [1, 2, 3, 4, 5]) print('Original array:', *my_array) my_array.reverse() print('Reversed array:', *my_array)>

出力
Original array: 1 2 3 4 5 Reversed array: 5 4 3 2 1>

配列内の要素を反転するための複雑さ:

時間計算量: の上)
補助スペース: ○(1)

配列から要素を拡張

この記事では、Python リストについて説明します。 伸ばす() そしてそれを理解しようと努める Python リスト extend()。

配列からの要素の拡張とは何ですか?

Python では、配列は、同じデータ型の複数の値または要素を 1 つの変数に格納するために使用されます。の 伸ばす() 関数は単に反復可能な項目を配列の末尾に付加するために使用されます。簡単に言えば、このメソッドは、指定された配列または既存の配列の末尾に値の配列を追加するために使用されます。

list extend() の構文

の構文は、 伸ばす() 方法:

list.extend(iterable)>

ここでは、iterable のすべての要素が list1 の最後に追加されます。

例 1:

提供されたコードは、配列を拡張して追加の要素を含める機能を示しています。輸入するのは、array>エイリアスを使用してモジュールを作成し、整数の配列を作成し、拡張前に配列を出力し、 extend()> メソッドを実行し、最後に拡張配列を出力します。これは、既存の配列構造に要素を追加する機能を簡潔に示しています。

Python3
import array as arr a = arr.array('i', [1, 2, 3,4,5]) print('The before array extend : ', end =' ') for i in range (0, 5): print (a[i], end =' ') print() a.extend([6,7,8,9,10]) print('
The array after extend :',end=' ') for i in range(0,10): print(a[i],end=' ') print()>

出力
The before array extend : 1 2 3 4 5 The array after extend : 1 2 3 4 5 6 7 8 9 10>

例 2:

パンダロック

提供されたコードは、整数や浮動小数点を含むさまざまなデータ型で配列を拡張する機能を示します。それは、array>モジュールを使用して、両方のデータ型の配列を作成し、それらを使用して拡張します。 extend()> 方法。次に、変更を示すために、拡張の前後に配列が出力されます。これは、さまざまなデータ表現の配列に要素を追加する機能を効果的に示しています。

Python3
import array as arr a=arr.array('i',[1,2,3,4,5,6]) print('The Before extend array is :',end=' ') for i in range(0,6): print(a[i],end=' ') print() a.extend([7,8,9,10,11,12]) print('
The After extend array is :',end=' ') for i in range(0,12): print(a[i],end=' ') print() b = arr.array('d', [2.1,2.2,2.3,2.4,2.5,2.6]) print('
The before extend array is :',end=' ') for i in range(0,6): print(b[i],end=' ') print() b.extend([2.6,2.7,2.8,2.9]) print('
The after extend array is :',end=' ') for i in range(0,9+1): print(b[i],end=' ') print()>

出力
The Before extend array is : 1 2 3 4 5 6 The After extend array is : 1 2 3 4 5 6 7 8 9 10 11 12 The before extend array is : 2.1 2.2 2.3 2.4 2.5 2.6 The after extend array is : 2.1 2.2 2.3 2.4 2...>

配列から要素を拡張する場合の複雑さ:

時間計算量 :O(1)
補助スペース: ○(1)

Python 配列に関連する詳細情報リソース:

  • Python の配列 |セット 1 (概要と機能)
  • Python の配列 |セット 2 (重要な機能)