Pythonでリスト(配列)に普通に要素を追加する方法
- 作成日: 2021-05-04
- 更新日: 2023-12-24
- カテゴリ: Python
Pythonのリスト(配列)に要素を追加する
Pythonではリスト(配列)に要素を追加することができます。
要素を追加することでリストの内容を変化させ、柔軟なプログラミングを可能にします。
Pythonのリストに要素を追加する代表的な方法は↓の通りです。
- append()で末尾に追加する
- extend()でリスト同士を連結する
- insert()で指定位置に追加する
結論から言うと↓のようなコードになります。
# 追加
lis = [1, 2]
lis.append(3) # 3という値をlisの末尾に追加する
print(lis)
# [3]
# 挿入
lis = [1, 2]
lis.insert(0, 3) # lisの0番目の位置に値3を挿入する
print(lis)
# [3, 1, 2]
# 連結
lis1 = [1, 2]
lis2 = [3, 4]
lis1.extend(lis2) # lis1の末尾にlis2を連結する
print(lis1)
# [1, 2, 3, 4]
この記事ではPythonによるリストへの要素の追加方法を解説します。
リストに要素を追加するということ
リストに要素を追加するというのはどういうことでしょうか?
まずPythonのリストはなんなのかというと、これは配列というデータ構造です。
ちなみに連結リストなどのデータ構造もありますが、Pythonのリストの実装は配列になっているのでご注意ください。
🦝 < リストなのに配列なんだって
Pythonのリストは配列ですが、この配列は可変長配列になっています。
つまり自由にその大きさを変えられる配列のことを言います。
可変長配列は↓のようなものです。
[1, 2, 3, 4]
↑の1
や2
や3
や4
が配列内の要素です。
左側(1
側)が配列の先頭で、右側(4
側)が配列の末尾です。
要素とは値で、値は要素です。配列は要素の集まりと見ることができます。
この配列の末尾に5
という要素を追加すると↓のようになります。
[1, 2, 3, 4, 5]
配列の末尾に5
が追加されました。
配列全体の大きさも追加に合わせて変わっていますが、これが可変長配列の特徴です。
この「追加」に相当する機能がリストのappend()
です。
また配列の先頭に5
という要素を挿入してみます。
[5, 1, 2, 3, 4]
配列の先頭に5
が挿入されました。
この「挿入」に相当する機能がリストのinsert()
です。
では次に↓のような別の配列を用意します。
[5, 6, 7]
↑の配列を先ほどの配列の末尾に連結すると↓のようになります。
[1, 2, 3, 4, 5, 6, 7]
連結されました。この「連結」に相当する機能がリストのextend()
です。
append()で末尾に追加する
リストの末尾に要素を追加するにはリストのメソッドappend()
を使います。
append()
は↓のような構造になっています。
list.append(x)
x
が要素です。append()
は引数を1つ取り、この引数がリストの末尾に追加されます。
↓がサンプルコードです。
lis = [1, 2, 3]
lis.append(4) # 4という値をlisの末尾に追加する
print(lis)
# [1, 2, 3, 4]
lis.append(5) # 5という値をlisの末尾に追加する
print(lis)
# [1, 2, 3, 4, 5]
値は整数だけでなく文字列やリストやタプル、辞書や集合などあらゆるオブジェクトを追加することができます。
extend()でリスト同士を連結する
extend()
は別のリストをリストに連結するメソッドです。
その構造は↓のようになっています。
list.extend(iterable)
extend()
の第1引数(iterable
)に連結したいオブジェクトを指定します。
iterable
とあるように、第1引数に指定できるオブジェクトはリストに限りません。
タプルや辞書など、for
文で回せるオブジェクトは何でも渡すことができます。
extend()
は↓のように使います。
lis = [1, 2, 3]
lis.extend([4, 5])
print(lis)
# [1, 2, 3, 4, 5]
lis.extend((6, 7))
print(lis)
# [1, 2, 3, 4, 5, 6, 7]
lis.extend({'a': 1, 'b': 2})
print(lis)
# [1, 2, 3, 4, 5, 6, 7, 'a', 'b']
insert()で指定位置に追加する
リストの指定の位置に要素を挿入するにはリストのメソッドinsert()
を追加します。
insert()
は↓のような構造になっています。
ist.insert(i, x)
insert()
の第1引数(i
)には挿入位置を指定します。
第2引数のx
は挿入したい要素を指定します。
第1引数の挿入位置はリスト内の添え字です。
たとえば挿入位置が0
ならinsert()
はリスト内の0
番目の位置に要素を挿入します。
挿入位置が1
なら1
番目の位置に挿入です。
挿入すると後ろにある既存の要素は後ろにずれていきます。
lis = [1, 2, 3]
lis.insert(0, 4) # lisの0番目の位置に値4を挿入する
print(lis)
# [4, 1, 2, 3]
lis.insert(2, 5) # lisの2番目の位置に値5を挿入する
print(lis)
# [4, 1, 5, 2, 3]
insert()
に渡す要素も整数に限らずあらゆるデータを指定することができます。
おわりに
今回はPythonのリストに要素を追加する方法を解説しました。
リストは便利なデータ構造で使う機会が多いかと思います。
🦝 < リストなしでは生きられない身体になってしまった
🐭 < リスト中毒