3.6. リスト

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

3.6.1. リストの基本

1
2
3
4
5
6
  test = ['first','second','third']
  print (test)
  print ('--------------------------------')
  print (test[0])
  print (test[1])
  print (test[2])

出力

['first', 'second', 'third']
----------------------------------------
first
second
third
タプルは「 () 」(カッコ)を使用しましたが、リストでは「 [] 」(角カッコ)を使用します。またn番目の要素は添え字n-1で指定します。

3.6.2. 要素の追加

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

1
2
3
4
  test = ['first', 'second']
  print (test)
  test.append('third')
  print (test)

出力

['first', 'second']
--------------------------------
['first', 'second', 'third']

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

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

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

1
2
3
4
  test = ['first', 'second']
  print (test)
  test.insert(1,'middle')
  print (test)

出力

['first', 'second']
--------------------------------
['first', 'middle', 'second']

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

3.6.4. 要素の削除1

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

1
2
3
4
5
6
7
8
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'のみ削除が行われます。

3.6.5. 要素の削除2

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

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
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\'が削除されます。

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

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

1
2
3
test_list_1 = ['100', '200', '300', '200', '100']

print (test_list_1.index('200'))

出力

1

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

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

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

1
2
3
test_list_1 = ['100', '200', '300', '200', '100']

print (test_list_1.count('200'))

出力

2