Python Language
配列
サーチ…
前書き
パラメーター
パラメータ | 詳細 |
---|---|
b | サイズ1バイトの符号付き整数を表します。 |
B | サイズ1バイトの符号なし整数を表す |
c | サイズ1バイトの文字を表します。 |
u | サイズ2バイトのUnicode文字を表します。 |
h | サイズが2バイトの符号付き整数を表します。 |
H | 2バイトの符号なし整数を表す |
i | サイズが2バイトの符号付き整数を表します。 |
I | 2バイトの符号なし整数を表す |
w | サイズが4バイトのUnicode文字を表します。 |
l | サイズが4バイトの符号付き整数を表します。 |
L | サイズが4バイトの符号なし整数を表す |
f | サイズが4バイトの浮動小数点を表します。 |
d | サイズが8バイトの浮動小数点を表します。 |
配列の基本的な紹介
配列は、同じデータ型の値を格納するデータ構造です。 Pythonでは、これが配列とリストの主な違いです。
Pythonリストには、異なるデータ型に対応する値を含めることができますが、Pythonの配列には同じデータ型に対応する値しか含めることができません。このチュートリアルでは、いくつかの例があるPython配列を理解します。
Pythonを初めてお使いの方は、Pythonのはじめの記事から始めましょう。
Python言語で配列を使用するには、標準のarray
モジュールをインポートする必要があります。これは、配列が文字列、整数などの基本的なデータ型ではないためです。ここでは、Pythonでarray
モジュールをインポートする方法を示します:
from array import *
array
モジュールをインポートしたら、 array
を宣言できます。あなたのやり方は次のとおりです:
arrayIdentifierName = array(typecode, [Initializers])
上の宣言では、 arrayIdentifierName
は配列の名前、 typecode
は配列の型をPythonに知らせ、 Initializers
は配列が初期Initializers
される値です。
型コードは、配列値の型または配列の型を定義するために使用されるコードです。パラメータセクションのテーブルは、配列とその型を宣言するときに使用できる値を示しています。
Pythonの配列宣言の実際の例を以下に示します:
my_array = array('i',[1,2,3,4])
上の例では、使用されるタイプコードはi
です。この型コードは、サイズが2バイトの符号付き整数を表します。
ここでは、5つの整数を含む配列の簡単な例を示します
from array import *
my_array = array('i', [1,2,3,4,5])
for i in my_array:
print(i)
# 1
# 2
# 3
# 4
# 5
インデックスを使用して個々の要素にアクセスする
個々の要素は、索引を介してアクセスできます。 Python配列はゼロインデックス化されています。次に例を示します。
my_array = array('i', [1,2,3,4,5])
print(my_array[1])
# 2
print(my_array[2])
# 3
print(my_array[0])
# 1
append()メソッドを使用して配列に値を追加する
my_array = array('i', [1,2,3,4,5])
my_array.append(6)
# array('i', [1, 2, 3, 4, 5, 6])
値6
が既存の配列値に追加されていることに注意してください。
insert()メソッドを使用して配列に値を挿入する
insert()
メソッドを使用して、配列の任意のインデックスに値を挿入できます。次に例を示します。
my_array = array('i', [1,2,3,4,5])
my_array.insert(0,0)
#array('i', [0, 1, 2, 3, 4, 5])
上記の例では、値0がインデックス0に挿入されています。最初の引数はインデックスで、2番目の引数は値です。
extend()メソッドを使ってPython配列を拡張する
Python配列は、 extend()
メソッドを使用して複数の値で拡張できます。次に例を示します。
my_array = array('i', [1,2,3,4,5])
my_extnd_array = array('i', [7,8,9,10])
my_array.extend(my_extnd_array)
# array('i', [1, 2, 3, 4, 5, 7, 8, 9, 10])
配列my_arrayはmy_extnd_array
値で拡張されています。
fromlist()メソッドを使用してリストから項目を配列に追加する
次に例を示します。
my_array = array('i', [1,2,3,4,5])
c=[11,12,13]
my_array.fromlist(c)
# array('i', [1, 2, 3, 4, 5, 11, 12, 13])
そこで、値11,12、および13がリストc
からmy_array
追加されたことがmy_array
ます。
remove()メソッドを使用して配列要素を削除する
次に例を示します。
my_array = array('i', [1,2,3,4,5])
my_array.remove(4)
# array('i', [1, 2, 3, 5])
要素4が配列から削除されたことがわかります。
pop()メソッドを使用して最後の配列要素を削除する
pop
は配列から最後の要素を削除します。次に例を示します。
my_array = array('i', [1,2,3,4,5])
my_array.pop()
# array('i', [1, 2, 3, 4])
したがって、最後の要素( 5
)が配列からポップされたことがわかります。
index()メソッドを使用して、そのインデックスを通じて任意の要素を取得します。
index()
は、一致する値の最初のインデックスを返します。配列はゼロインデックス付けされていることに注意してください。
my_array = array('i', [1,2,3,4,5])
print(my_array.index(5))
# 5
my_array = array('i', [1,2,3,3,5])
print(my_array.index(3))
# 3
2番目の例では、値が配列内に2回存在しても、インデックスが1つだけ返されたことに注意してください
reverse()メソッドを使用してPython配列を逆順にする
reverse()
メソッドは、名前が何をするかを指示します。つまり、配列を逆にします。次に例を示します。
my_array = array('i', [1,2,3,4,5])
my_array.reverse()
# array('i', [5, 4, 3, 2, 1])
buffer_info()メソッドを使用して配列バッファ情報を取得する
このメソッドは、メモリ内の配列バッファの開始アドレスとarray内の要素の数を提供します。次に例を示します。
my_array = array('i', [1,2,3,4,5])
my_array.buffer_info()
(33881712, 5)
count()メソッドを使用して要素の出現回数をチェックする
count()
はcount()
を返し、要素は配列に現れます。次の例では、値3
が2回発生することがわかります。
my_array = array('i', [1,2,3,3,5])
my_array.count(3)
# 2
tostring()メソッドを使用して配列を文字列に変換する
tostring()
は配列を文字列に変換します。
my_char_array = array('c', ['g','e','e','k'])
# array('c', 'geek')
print(my_char_array.tostring())
# geek
tolist()メソッドを使用して同じ要素を持つ配列をpythonリストに変換する
Python list
オブジェクトが必要なときは、 tolist()
メソッドを使って配列をリストに変換することができます。
my_array = array('i', [1,2,3,4,5])
c = my_array.tolist()
# [1, 2, 3, 4, 5]
fromstring()メソッドを使用してchar配列に文字列を追加する
fromstring()
を使用して文字配列に文字列を追加できます。
my_char_array = array('c', ['g','e','e','k'])
my_char_array.fromstring("stuff")
print(my_char_array)
#array('c', 'geekstuff')