どうも、ちょげ(@chogetarou)です。
リスト(List)の最後からN個の要素を削除する方法を紹介します。
方法
リスト(List)の最後からN個の要素を削除する方法は、3つあります。
delステートメント
1つ目は、delステートメントを使う方法です。
まず、delを記述します。
そして、delの右辺に、削除する要素数のマイナスの値から末尾までを指定します。
#N=削除する要素数
del list[-N:]
上記のdelは、リストの最後からN個の要素を削除します。
使用例
numbers = [1, 2, 3, 4, 5, 6]
del numbers[-3:]
print(numbers)
出力:
[1, 2, 3]
スライス
2つ目は、スライスを使う方法です。
具体的には、list[:-N]
のように、先頭から取得する要素数のマイナスの値までスライスします。
#N=削除する要素数
lastN = list[:-N]
上記のスライスは、リストの最後からN個の要素を削除したリスト(List)を生成します。
使用例
numbers = [1, 2, 3, 4, 5, 6]
lastN = numbers[:-3]
print(lastN)
出力:
[1, 2, 3]
forループ
3つ目は、forループを使う方法です。
まず、削除する要素数だけforループします。
そして、forループの処理で、リストからpop()を呼び出します。
#N=削除する要素数
for i in range(N):
list.pop()
上記のforループは、リストの最後からN個の要素を削除します。
使用例
numbers = [1, 2, 3, 4, 5, 6]
for i in range(3):
numbers.pop()
print(numbers)
出力:
[1, 2, 3]
まとめ
リスト(List)の末尾からN個の要素を削除する方法は、次の3つです。
- delステートメントを使う方法
del list[-N:]
- スライスを使う方法
lastN = list[:-N]
- forループを使う方法
コメント