リスト | Python-izm

リスト

タプルに続いてリストの解説です。前項でも少し触れましたが、タプルとの違いは作成した後に要素の追加や削除が出来るか出来ないかです。

リストの基本

要素の変更がいつでも可能なので非常に汎用性が高いです。以下使い方の例となりますが、この段階ではタプルとさほど変わりません。
for文は後の項で説明しますが、繰り返し処理を行う機能です。

test_list_1 = ['python', '-', 'izm', '.', 'com']
print(test_list_1)

print('--------------------------------')

for i in test_list_1:
    print(i)
['python', '-', 'izm', '.', 'com']
--------------------------------
python
-
izm
.
com

タプルは「 () 」(カッコ)を使用して作成しましたが、リストでは「 [] 」(大カッコ)で作成します。上記の例は作成と同時に要素を埋め込み、リストをそのまま出力した場合と、ループ(繰り返し処理)を利用して出力した場合の例です。

要素の追加

ここからがタプルとの違いです。要素の追加を行ってみましょう。appendはリストの末尾に要素の追加を行います。

test_list_1 = []
print(test_list_1)

print('--------------------------------')

test_list_1.append('python')
test_list_1.append('-')
test_list_1.append('izm')
test_list_1.append('.')
test_list_1.append('com')

print(test_list_1)
[]
--------------------------------
['python', '-', 'izm', '.', 'com']

まずは空のリストを作成し、その後appendを利用して要素の追加を行っています。

インデックスを指定して追加

appendは常に末尾へ追加されますが、insertを利用するとインデックス値を指定して要素を追加することができます。

test_list_1 = ['python', 'izm', 'com']
print(test_list_1)

print('--------------------------------')

test_list_1.insert(1, '-')
test_list_1.insert(3, '.')

print(test_list_1)

test_list_1.insert(0, 'http://www.')

print(test_list_1)
['python', 'izm', 'com']
--------------------------------
['python', '-', 'izm', '.', 'com']
['http://www.', 'python', '-', 'izm', '.', 'com']

最初の引数は追加箇所を示すインデックス値、次の引数は追加を行う要素となります。インデックス値にゼロを指定すると、リストの先頭へ追加が行われます。

要素の削除1

removeは指定の引数に該当する要素を削除します。最初に見つかった要素のみ削除が行われるので、指定の要素がリスト内に複数存在する場合は注意が必要です。

test_list_1 = ['1', '2', '3', '2', '1']
print(test_list_1)

print('--------------------------------')

test_list_1.remove('2')

print(test_list_1)
['1', '2', '3', '2', '1']
--------------------------------
['1', '3', '2', '1']

リスト内の最初の’2’のみ削除が行われます。

要素の削除2

popは指定のインデックス値に存在する要素の削除を行い、削除された要素を戻り値として返します。引数なしで使用すると末尾の要素が削除されます。

test_list_1 = ['1', '2', '3', '2', '1']
print(test_list_1)

print('--------------------------------')

print(test_list_1.pop(1))
print(test_list_1)

print(test_list_1.pop())
print(test_list_1)
['1', '2', '3', '2', '1']
--------------------------------
2
['1', '3', '2', '1']
1
['1', '3', '2']

最初のpopの結果として’2’が削除され、次のpopで末尾の’1’が削除されます。

要素のインデックスを取得

indexを利用すると、指定の引数に該当するインデックス値を取得することができます。removeと同様、最初に見つかった要素のインデックス値のみ取得出来ます。

test_list_1 = ['100', '200', '300', '200', '100']

print(test_list_1.index('200'))
1

最初に見つかった’200’のインデックス値が返されます。

リスト内での要素数を取得

countは指定の引数がリスト内でいくつあるかを返します。

test_list_1 = ['100', '200', '300', '200', '100']

print(test_list_1.count('200'))
2