pythonのリストに要素を追加する

2020.1.27

概要

pythonのリスト(配列)にappendextendinsertを使って要素を追加する方法とスライスを使った方法を紹介します。

appendを使って要素を追加する

appendの使い方は次のようになります。

list.append(要素)

appendを使ってリストに要素を追加するコードは次のようになります。

x = [1,2,3]
x.append(4) # [1, 2, 3, 4]

apendにリストを渡すとリスト自体を1要素として追加します。

x = [1,2,3]
x.append([4,5]) # [1, 2, 3, [4, 5]]

insertを使って要素を挿入する

insertの使い方は次のようになります。

list.insert(挿入位置,要素)

insertを使って要素を挿入するコードは次のようになります。

x = [1,3,4]
x.insert(1,2) # [1, 2, 3, 4]

append同様、insertにリストを渡すとリスト自体を1要素として挿入します。

x = [1,3,4]
x.insert(1,[2,5]) # [1, [2, 5], 3, 4]

extendを使って複数要素を追加する

extendの使い方は次のようになります。

list.extend(リスト)

extendを使って複数要素を追加するコードは次のようになります。

x = [1,2,3]
x.extend([4,5]) # [1, 4, 5]

extendではリスト以外を指定するとエラーになります。

x = [1,2,3]
x.extend(3) # TypeError: 'int' object is not iterable

スライスを使って複数要素を追加する

スライスを使ってリストに複数要素を追加する方法は次のようになります。

list[挿入位置:挿入数]

コードは次のようになります。

x = [1,2,3]
x[len(x):] = [4,5] # [1, 2, 3, 4, 5]

len()はリストの要素数を取得しています。

スライスを使って要素を挿入する

スライスを使ってinsertのように挿入する方法は次のようになります。

list[挿入開始位置:挿入終了位置]

コードは次のようになります。

x = [1,2,3]
x[1:1] = [4,5] # [1, 4, 5, 2, 3]

演算子を使ってリストに要素を追加する

単純に+でもリストの要素を追加できます。

x = [1,2,3]
x = x + [4,5] # [1, 2, 3, 4, 5]

x + [4,5]しただけではxの内容は更新されませんので、結果を代入する必要があります。

演算子を使ってリストの要素をn回繰り返して追加する

*を使うことでリストの要素をn回分同じ内容で増やせます。

こちらも+演算子のときと同様、結果を変数に代入する必要があります。

x = [1,2,3]
x = x * 3 # [1, 2, 3, 1, 2, 3, 1, 2, 3]

リストを多次元化して増やすと便利そうですね。

x = [1,2,3]
x = [x] * 3 # [[1, 2, 3], [1, 2, 3], [1, 2, 3]]

Related.