どうも、ちょげ(@chogetarou)です。
リスト(List)の奇数を削除する方法を紹介します。
方法

リスト(List)の奇数を削除する方法は、2つあります。
forループ
1つは、forループを使う方法です。
まず、リスト(List)をforループします。
forループの処理でif文を呼び出し、要素を2で割った余りが0かどうか判定します。
要素を2で割った余りが0でない時、引数にその要素を指定したremove()メソッドを呼び出します。
#ls=対象のリスト
for i in ls:
if i % 2 !=0:
ls.remove(i)
上記のforループは、リスト内の奇数を全て削除します。
使用例
numbers = [1, 2, 3, 4, 5]
for i in numbers:
if i % 2 !=0:
numbers.remove(i)
print(numbers) #[2, 4]
filter()関数
もう1つは、filter()関数を使う方法です。
まず、list()を呼び出し、引数でfilter()を呼び出します。
filterの第1引数に引数を1つ持つラムダ式、第2引数にリストを指定します。
そして、、filter()のラムダ式で、「引数を2で割った余りが0」という条件式を返します。
#ls=対象のリスト
result = list(filter(lambda x: x % 2 == 0, ls))
上記のlist(filter())は、filter()の第2引数に指定したリストの奇数を削除したリストを生成します。
使用例
numbers = [1, 2, 3, 4, 5]
result = list(filter(lambda x: x % 2 == 0, numbers))
print(result) #[2, 4]
まとめ
リスト(List)の奇数を削除する方法は、次の2つです。
- forループを使う方法
- filter()を使う方法
コメント