Pythonの配列から要素を削除する方法3選[わかりやすく解説]

スポンサードリンク
アイキャッチ Python
過去の自分
過去の自分

Pythonで作った配列の中で、不要な要素が出てきてしまった…。
配列から要素を削除する方法を教えて!

今の自分
今の自分

あいよ!
初心者でも使いやすいものを3つ紹介するよ!

Pythonの配列から要素を削除する方法を、
Python歴3年の私ができるだけわかりやすく解説し、解決に導きます。

スポンサードリンク

Pythonの配列から要素を削除するには

代表的には以下3つの方法があります。

  • del
  • remove
  • pop

まず、配列とは何かを見ていきましょう。

スポンサードリンク

配列とは

配列とは、単語や数字などの要素を1つ入れることができる箱が集まったものです。

配列の基礎や作成方法は、下記記事でわかりやすく解説しております。
気になった方はご覧ください。

[基礎]Pythonで配列を作成する方法[わかりやすく解説]
スポンサードリンク

要素の削除方法

要素の削除について

要素を削除する」とはどういうことなのでしょうか。

配列の基礎と同様に配列を「タンス」で例えて解説していきます。

タンスの一番上の引き出しに「靴下」、2段目に「シャツ」、
3段目に「パンツ」が入っているとします。

そこから「シャツ」を抜き取って引き出しを空っぽにすることを、
配列では要素を削除するといいます。

配列では、途中の引き出しが空っぽになることはありませんので、
次の要素が順次ズレて詰まった状態になります。
(タンスでは、3段目の「パンツ」が2段目に入ります

では、要素を削除する方法を解説いたします。

del

del」を使用することで、要素を削除することができます。
2番目(要素番号1)の「シャツ」を削除してみましょう。

my_list = ['靴下', 'シャツ', 'パンツ']
del my_list[1]

print(my_list)

#実行結果:['靴下', 'パンツ']

【 del 配列の入った変数[削除したい要素の番号] 】

1番目の「靴下」を削除したい場合は、要素番号は「0」を指定してください。

要素が文字列の場合は、「’(クォーテーション)」で囲ってください。
数字の場合は囲わなくて大丈夫です。

['靴下', 'シャツ', 'パンツ']
[0, 1, 2]

要素番号「-1」を指定することで、一番後ろの要素を削除することができます。

my_list = ['靴下', 'シャツ', 'パンツ']
del my_list[-1]

print(my_list)

#実行結果:['靴下', 'シャツ']

「-2」なら後ろから2番目、「-3」なら後ろから3番目という具合です。

複数の要素を一度に削除したい場合、範囲を指定して削除することができます。
少し難しいので、覚えなくても大丈夫です。

my_list = ['靴下', 'シャツ', 'パンツ', '手袋']
del my_list[2:] #要素番号2(パンツ)を含む、それ以降を削除
print(my_list)
#実行結果:['靴下', 'シャツ']

my_list = ['靴下', 'シャツ', 'パンツ', '手袋']
del my_list[:1] #要素番号1(シャツ)を含む、それ以前を削除
print(my_list)
#実行結果:['パンツ', '手袋']

my_list = ['靴下', 'シャツ', 'パンツ', '手袋']
del my_list[1:3] #要素番号1(シャツ)を含む、要素番号3未満(手袋は含まない)を削除
print(my_list)
#実行結果:['靴下', '手袋']

飛び飛びで複数の要素を削除する方法もありますが、さらに難しくなるため本記事では割愛します。

remove

remove()」を使用することで、要素名を指定して削除することができます。

delと同じく「シャツ」を削除してみましょう。

my_list = ['靴下', 'シャツ', 'パンツ']
my_list.remove('シャツ')

print(my_list)

#実行結果:['靴下', 'パンツ']

【 配列の入った変数.remove(削除したい要素名) 】

同じ要素が複数あった場合は、最初の1つだけが削除されます。

my_list = ['靴下', 'シャツ', 'パンツ', 'シャツ']
my_list.remove('シャツ')

print(my_list)

#実行結果:['靴下', 'パンツ', 'シャツ']

複数の要素を削除することはできません。
複数の要素を削除したい場合は、上記作業を繰り返してください。

pop

「del」「remove()」は要素を削除するだけでしたが、
pop()」を使用することで、要素を抜き取ることができます。

「my_list」から「靴下」を抜き取って、「my_bag」に入れてみましょう。

my_list = ['靴下', 'シャツ', 'パンツ']
my_bag = my_list.pop(0)

print(my_list)
print(my_bag)

#実行結果:
['シャツ', 'パンツ']
靴下

【 抜き取ったものを入れる変数 = 配列の入った変数.pop(抜き取りたい要素番号) 】

※複数の要素を抜き取ることはできません。

スポンサードリンク

最後に

Pythonの配列から要素を削除する方法を解説いたしました。

  • 要素番号で削除する「del
  • 要素名で削除する「remove()
  • 要素を抜き取る「pop()

最後までお読みいただき、ありがとうございました。がんばってください!

タイトルとURLをコピーしました