【Python】配列(array)の使い方をわかりやすく解説!
配列を使えば、複数の値をまとめて管理することができます。
配列とはデータの塊の事です。
1つの変数の中に、複数の値を入れることが出来ます。
なので複数データがある場合は、1つの変数だけで複数のデータが入れれる配列を使った方が便利です。
今回はPythonの配列の基礎として、配列の使い方と配列で使える便利なメソッド解説します。
目次
配列(array)の構文
配列の構文は下記のようになります。
1 2 3 |
import array 変数名 = array.array("i", [要素1,要素2...]) |
import arrayによって配列を使えるようにインポートします。
そして、[]の中に要素を書くことで配列を作成することができます。
しかし、文字列と数値の混合して定義することはできませんので注意してください。
配列の基本的な使い方
ここでは配列の基本的な使い方をサンプルコードを使って紹介します。
配列の要素を変更する
配列名の後ろに[番号]を指定して値を入力することで、配列の要素を変更することができます。
しかし、[番号]のスタートは「0」からなので注意してください。
例
1 2 3 4 5 |
import array num = array.array("h", [1, 13, 15]) num[1] = 90 print(num) |
出力結果
array(‘h’, [1, 90, 15])
num[1] (2番目)に 90と置き換えたことにより、13から90へ要素が変更されました。
配列を追加する方法
配列名と追加する要素の間に「+」をつけることで配列に要素を追加することができます。
また。「+=」にすることで既存の配列に要素を追加することができます
例
1 2 3 4 5 6 7 8 9 |
import array num = array.array("h", [1, 2, 3, 4, 5, 6, 7, 8, 9 ,10]) num2 = num + array.array("h", [7, 8, 9 ,10]) print(num2) num += array.array("h", [7, 8, 9 ,10]) print(num) |
出力結果
array(‘h’, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 7, 8, 9, 10])
array(‘h’, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 7, 8, 9, 10])
配列と要素の間に「+」をつけることで、配列に要素が追加されました。
また、「+=」をつけることで既存の配列に要素を追加されました。
配列を結合する方法
配列と配列の間に「+」をつけることで配列同士を結合することができます。
例
1 2 3 4 5 6 7 |
import array num = array.array("h", [1, 13, 15]) num1 = array.array("h", [1, 67, 89]) num2 = num + num1 print(num2) |
出力結果
array(‘h’, [1, 13, 15, 1, 67, 89])
配列と配列の間に「+」をつけることで、配列同士が結合がされました。
配列の値を削除する
del文を使うことで指定した要素を削除することができます。
例
1 2 3 4 5 6 |
import array num = array.array("h", [1, 2, 3, 4, 5, 6, 7, 8, 9 ,10]) del num[4] print(num) |
出力結果
array(‘h’, [1, 2, 3, 4, 6, 7, 8, 9, 10])
del文によって指定した要素が削除されました。
配列の値を検索する
配列の値を検索するにはin演算子を使用します。
検索した結果ある場合はtrueを、ない場合はfalseを返します。
例
1 2 3 4 5 |
import array num = array.array("h", [1, 2, 3, 4, 5, 6, 7, 8, 9 ,10]) print(13 in num) print(5 in num) |
出力結果
False
True
配列で使用できる便利なメソッド
先ほどは配列の基本的な使い方を解説しましたが、配列で使用できる便利なメソッドがありますので、サンプルコードを使って解説します。
配列の指定箇所に要素を追加する(insert())
insert()関数は配列の指定した箇所に要素を追加することができます。
例
1 2 3 4 5 6 |
import array num = array.array("h", [1, 2, 3, 4, 5, 6, 7, 8, 9 ,10]) num.insert(3,10) print(num) |
出力結果
array(‘h’, [1, 2, 3, 10, 4, 5, 6, 7, 8, 9, 10])
insert(3,10)としたことで、3の後ろに10を追加することができました。
配列の末尾に要素を追加する(append())
append()関数は配列の末尾に要素を追加することができます。
例
1 2 3 4 5 |
import array num = array.array("h", [1, 2, 3, 4, 5, 6, 7, 8, 9 ,10]) num.append(100) print(num) |
出力結果
array(‘h’, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 100])
append(100)としたことで、配列の末尾に100を追加することができました。
配列の長さ(要素数)を取得する(len())
len()関数は配列の長さ(要素数)を取得することができます。
例
1 2 3 4 5 6 |
import array num = array.array("h", [1, 2, 3, 4, 5, 6, 7, 8, 9 ,10]) num.append(100) print(len(num)) |
出力結果
11
len()関数を使用したことで、配列の要素数を取得することができました。
2つの配列を結合する(extend())
extend()関数は2つの配列を結合することができます。
例
1 2 3 4 5 6 7 8 |
import array num = array.array("h", [1, 2, 3, 4, 5, 6, 7, 8, 9 ,10]) num1 = array.array("h", [7, 8, 9 ,10]) num.extend(num1) print(num) |
出力結果
array(‘h’, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 7, 8, 9, 10])
numにnum1の要素を追加することができました。
配列の特定の値を削除する(remove())
remove()関数は配列の特定の値を削除することができます。
例
1 2 3 4 5 6 7 8 |
import array num = array.array("h", [1, 2, 3, 4, 5, 6, 7, 8, 9 ,10]) num.remove(4) num.remove(9) print(num) |
出力結果
array(‘h’, [1, 2, 3, 5, 6, 7, 8, 10])
numの要素である4と9を削除することができました。
配列の値を検索する(count())
count()関数で指定した値がいくつ配列に含まれているのかを調べることができます。
例
1 2 3 4 5 6 7 8 9 |
import array num = array.array("h", [1, 2, 3, 4, 5, 6, 7, 8, 9 ,10, 4]) num1 = num.count(4) num2 = num.count(9) print(num1) print(num2) |
出力結果
2
1
numには4が2つ、9が1つあるので2と1が表示されました。
配列の値のを並び替える(sorted())
sorted()関数は配列の要素を昇順に並び替えることができます。
また、sorted()関数にreverse = Trueを指定することで 配列の要素を逆順に並び替えることができます。
sorted()の例1
1 2 3 4 5 6 |
import array num = array.array("h", [1, 2, 3, 4, 5, 6, 7, 8, 9 ,10]) num1 = sorted(num) print(num1) |
出力結果
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numの要素が昇順に並び替えられて表示されました。
sorted()の例2
1 2 3 4 5 6 7 |
import array num = array.array("h", [1, 2, 3, 4, 5, 6, 7, 8, 9 ,10]) num1 = sorted(num, reverse = True) print(num1) |
出力結果
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
numの要素が降順に並び替えられて表示されました。
配列の値を検索する(index())
index()関数は指定した値が配列に含まれている場合、要素の最初のインデックスを調べることができます。
例
1 2 3 4 5 6 7 8 9 |
import array num = array.array("h", [1, 2, 3, 4, 5, 6, 7, 8, 9 ,10, 4]) num1 = num.index(4) num2 = num.index(9) print(num1) print(num2) |
出力結果
3
8
numの指定した要素のインデックスが表示されました。
配列の値を削除する(pop())
pop()関数は指定のインデックスの要素を削除することができます。
例
1 2 3 4 5 6 |
import array num = array.array("h", [1, 2, 3, 4, 5, 6, 7, 8, 9 ,10]) num.pop(4) print(num) |
出力結果
array(‘h’, [1, 2, 3, 4, 6, 7, 8, 9, 10])
numの指定したインデックスの要素が削除されて表示されました。
配列の要素を文字列にする(tolist())
clear()関数で配列の値を空にすることができます。
例
1 2 3 4 5 6 7 |
import array num = array.array("h", [1, 2, 3, 4, 5, 6, 7, 8, 9 ,10]) num1 = num.tolist() print(num1) |
出力結果
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
配列が文字列になって表示されました。
・参考記事:array — 効率のよい数値アレイ
ST
株式会社flyhawkのSTです。フライテックメディア事業部でのメディア運営・ライター業務なども担当。愛機はMac Book AirとThinkPad。好きな言語:swift、JS系(Node.js等)。好きなサーバー:AWS。受託開発やプログラミングスクールの運営をしております。ご気軽にお問い合わせください。