【python】listのremoveメソッドにallは指定できません【注意】

python

pythonでlistのremoveメソッドで「all」を指定できないか調べる人

pythonでlistのremoveメソッドで「all」を指定できないか調べる人
「pythonでlistの全要素を削除したいのですが、どうすれば良いでしょうか。具体的な例として、コピペできるソースコードも欲しいです。」

こんな疑問を解決します。

解決策

結論から言うと、removeメソッドの代わりにclearメソッドを使いましょう。

>>> lst.clear()

 

listのremoveメソッドで、allを指定することはできません

listのremoveメソッドで、allを指定することはできません

pythonのlistにはremoveメソッドがあります。しかし「all」を指定することはできないので、次のようにclearメソッドを使うのが一般的です。

ただし2.X系のpythonにはclearメソッドが無いため、後述のdel文を使って全要素を削除します。

>>> lst=[1,2,3,4,5]
>>> lst
[1, 2, 3, 4, 5]
>>> lst.clear()
>>> lst
[]

 

本記事の内容

  • listのremoveメソッドで、allを指定することはできません
  • 1.listの全ての要素を削除する
  • 2.list定義ごと削除する

この記事を書いている私はIT業界歴12年、年収1,000万円ちょっとの金融系エンジニアです。学生時代から様々なプログラミング言語を扱ってきましたが、その中でもpythonはとても扱いやすく生産性も高く、オススメの言語です。

本記事では、pythonでlist内の全要素を削除するために、①clearメソッドを使う方法、②del文を使う方法を解説します。

具体例を示し、細かい構文に迷ったときにコピー&ペーストして使えることも目指しました。少しでもお役に立てますと幸いです。

1.listの全ての要素を削除する

listの全ての要素を削除する

リストの全ての要素を削除は、すでにご紹介した通りclearメソッドを使います。整数でも文字列でもどんなlistでもclearメソッドを使うことができます。

>>> lst2=['apple', 'back', 'cookie']
>>> lst2
['apple', 'back', 'cookie']
>>> lst2.clear()
>>> lst2
[]

 

別の方法として、del文を使って要素を削除することも可能です。

>>> lst2=['apple', 'back', 'cookie']
>>> lst2
['apple', 'back', 'cookie']
>>> del lst2[:]
>>> lst2
[]

2.list定義ごと削除する

list定義ごと削除する

要素だけではなく、listそのものを削除することも可能です。

lst3=[1,'apple','back','cookie']
>>> lst3
[1, 'apple', 'back', 'cookie']

>>> #lst3の存在確認
>>> 'lst3' in vars() or 'a' in globals()
True

>>> #lst3の削除
>>> del lst3
>>> lst3
Traceback (most recent call last):
  File "", line 1, in 
NameError: name 'lst3' is not defined

>>> #lst3の存在確認
>>> 'lst3' in vars() or 'a' in globals()
False

 
今回は以上です。listの全要素の削除方法について解説しました。参考にしていただければ幸いです。
 

pythonは自動車、半導体メーカーなどでも使われています