要素の追加と連結(appendメソッド, extendメソッド)

広告

リストオブジェクトを作成後に新しい要素を追加することが可能です。いくつか方法がありますので順に確認していきます。

要素を追加

まずはオブジェクトをリストの最後に追加する方法です。リスト型で用意されている「append」メソッドを使います。

リストオブジェクト.append(オブジェクト)

リストの最後に引数に指定したオブジェクトを追加します。

具体的には次のように記述します。

list = ["A", "B", "C"]

list.append("D")
print list     # ["A", "B", "C", "D"]

リストの最後に新しい要素として文字列「D」が追加されます。結果的にリストは["A", "B", "C", "D"]となります。

別のリストの要素を追加

次にリストの最後に別のリストの要素を追加する方法です。リスト型で用意されている「extend」メソッドを使います。

リストオブジェクト.extend(リストオブジェクト)

リストの最後に引数に指定したリストが持つ要素が全て追加されます。

具体的には次のように記述します。

list = ["A", "B", "C"]

list.extend(["D", "E"])
print list      # ["A", "B", "C", "D", "E"]

リストの最後に別のリストに含まれている要素が追加されます。結果的にリストは["A", "B", "C", "D", "E"]となります。

なお、「extend」メソッドの代わりに「append」メソッドの引数にリストを指定した場合、リストの要素が追加されるのではなく、リストオブジェクトそのものが1つの要素として追加されますので注意して下さい。

list = ["A", "B", "C"]

list.append(["D", "E"])
print list      # ["A", "B", "C", ["D", "E"]]
リストの連結

リストとリストを連結して新しいリストを作成するには「+」演算子を使います。

リストオブジェクト + リストオブジェクト

「+」演算子はリストオブジェクトを変更するものではなく、リストとリストを連結して新しいリストオブジェクトを作成します。

具体的には次のように記述します。

list = ["A", "B", "C"]

newlist = list + ["D", "E"]
print newlist    # ["A", "B", "C", "D", "E"]

リスト["A", "B", "C"]に別のリスト["D", "E"]を連結し、新しいリストオブジェクトを作成しています。

また「*」演算子はリストオブジェクトを指定の回数繰り返した新しいリストオブジェクトを作成します。

リストオブジェクト * 回数

具体的には次のように記述します。

list = ["A", "B", "C"]

newlist = list * 3
print newlist    # ["A", "B", "C", "A", "B", "C", "A", "B", "C"]
サンプルコード

では実際に試してみます。

#coding: UTF-8

list = ["A", "B"]

list.append("C")
print list

list.extend(["D", "E"])
print list

newlist = list + ["F"]
print newlist

上記を「test6-1.py」として保存します。保存する時の文字コードはUTF-8です。そして次のように実行して下さい。

要素の追加と連結(appendメソッド, extendメソッド)

( Written by Tatsuo Ikura )