リストへの要素の追加と別のリストとの結合

作成済みのリストへ新しい要素を追加したり、別のリストを結合(連結)する方法について解説します。要素の追加には append メソッドや extend メソッドを使用します。

(Last modified: )

リストに要素を追加する

リストに新しい要素を追加する方法です。リスト型で利用可能な append メソッドを使用します。

リスト.append(値)

引数に指定した値を持つ要素をリストの最後に追加します。

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

mylist = ["A", "B", "C"]
mylist.append("D")

print(mylist)
--> ["A", "B", "C", "D"]
サンプルコード

次のサンプルを見てください。

mylist = ["Blue", "Red", "Green"]

# "White" を追加
mylist.append("White")
print(mylist)
>> ['Blue', 'Red', 'Green', 'White']

# "Black" を追加
mylist.append("Black")
print(mylist)
>> ['Blue', 'Red', 'Green', 'White', 'Black']

append メソッドを使ってリストの最後に要素を追加することができました。

スライス機能を使って要素を追加する

リストではスライス機能の開始インデックスと終了インデックスを指定してリストの指定した範囲の要素を別の要素と入れ替えることができますが、開始インデックスと終了インデックスを共にリストの最後の要素の次の位置を指定することで要素をリストの最後に追加することができます。リストの最後の要素のインデックスは、組み込み関数の len 関数を使って len(リスト) -1 として取得できるため、最後の要素の次の位置は len(リスト) で指定できます。

リスト[len(リスト):len(リスト)] = リストなど

イコール演算子の右に指定したリストなどをリストの最後に追加します。

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

mylist = ["A", "B", "C"]
mylist[len(mylist):len(mylist)] = ["D", "E"]

print(mylist)
--> ["A", "B", "C", "D", "E"]
サンプルコード

次のサンプルを見てください。

kantoulist = ["Tokyo", "Kanagawa", "Chiba", "Gunma"]
addlist = ["Saitama", "Ibaraki", "Tochigi"]

# kantoulist に addlist の要素を追加する
kantoulist[len(kantoulist):len(kantoulist)] = addlist
print(kantoulist)

>> ['Tokyo', 'Kanagawa', 'Chiba', 'Gunma', 'Saitama', 'Ibaraki', 'Tochigi']

スライス機能を使ってリストの最後に別のリストの要素を追加することができました。

リストに別のリストなどの要素を追加する

リストに別のリストの要素を追加する方法です。リスト型で利用可能な extend メソッドを使用します。

リスト.extend(リストなど)

引数に指定したリストの要素をリストの最後に追加します。追加できるのはリストなどのイテラブルなオブジェクトを指定します。イテラブルなオブジェクトとは文字列やリスト、タプル、辞書などです。

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

mylist = ["A", "B", "C"]
mylist.extend(["D", "E"])

print(mylist)
--> ["A", "B", "C", "D", "E"]

なお、 extend メソッドではなく append メソッドの引数に別のリストを指定した場合、別のリストの要素が追加されるのではなくリストそのものが 1 つの要素として追加されます。

mylist = ["A", "B", "C"]
mylist.append(["D", "E"])

print(mylist)
--> ["A", "B", "C", ["D", "E"]]
サンプルコード

次のサンプルを見てください。

eastlist = ["Tokyo", "Kanagawa", "Chiba"]
westlist = ["Osaka", "Nagoya", "Fukuoka"]

# eastlist に westlist の要素を追加する
eastlist.extend(westlist)
print(eastlist)
>> ['Tokyo', 'Kanagawa', 'Chiba', 'Osaka', 'Nagoya', 'Fukuoka']

extend メソッドを使ってリストの最後に別のリストの要素を追加することができました。

リストとに別のリストを結合して新しいリストを作成する

リストに対して + 演算子を使用すると、別のリストと結合して新しいリストを作成することができます。

リストA + リストB

2 つのリストの要素を持つ新しいリストを作成します。

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

list1 = ["A", "B"]
list2 = ["C", "D"]
list3 = list1 + list2
print(list3)
--> ["A", "B", "C", "D"]
サンプルコード

次のサンプルを見てください。

redlist = ["Orange", "Strawberry"]
yellowlist = ["Lemon", "Banana", "Grapefruit"]

# redlist と yellowlist を結合する
fruitlist = redlist + yellowlist
print(fruitlist)

>> ['Orange', 'Strawberry', 'Lemon', 'Banana', 'Grapefruit']

二つのリストを結合して新しいリストを作成することができました。

リストの要素を指定回数繰り返した新しいリストを作成する

リストに対して * 演算子を使用すると、リストの要素を指定回数繰り返した新しいリストを作成することができます。

リスト * 回数

リストの要素を指定した回数繰り返した新しいリストを作成します。

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

list = ["A", "B"]
newlist = list * 3
print(newlist)
--> ["A", "B", "A", "B", "A", "B"]
サンプルコード

次のサンプルを見てください。

baselist = ["Yes", "No"]

datalist = baselist * 4
print(datalist)

>> ['Yes', 'No', 'Yes', 'No', 'Yes', 'No', 'Yes', 'No']

リストの要素を指定回数繰り返した新しいリストを作成することができました。

-- --

作成済みのリストへ新しい要素を追加したり、別のリストを結合する方法について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。