python_list_リスト_添え字ではなく_要素を指定してのリストからの削除

 

items = ["Apple", "Banana", 

"Cherry", "Date", "Elderberry"]


上記のpythonのリストにおいて


添え字ではなく、要素をしていして、

その要素をリストから削除するようなメソッドはないでしょうか?


itemsから"Apple"を削除したいときは

どのような記述になるのでしょうか?


また、添え字を指定しての削除もできるのでしょうか?



Python のリストから **要素を指定して削除** するには、

`remove()` メソッドを使います。


### **要素を指定して削除 (`remove()`)**


```python


items

 = ["Apple", "Banana", "", 

"Date", "Elderberry"]


# "Apple" をリストから削除

items.remove("Cherry")  


# [Apple ,'Banana', 'Cherry', 'Date', 'Elderberry']

print(items)  


```

- `remove()` は 

**最初に見つかった該当要素** を削除します。


- 存在しない要素を指定するとエラー 

(`ValueError`) になります。


---


### **添え字を指定して削除 (`del` または `pop()`)**

**`del` を使う方法**


```python


items

 = ["Apple", "Banana", "Cherry", 

"Date", "Elderberry"]


# インデックス 0 の要素を削除

del items[0]  


 # ['Banana', 'Cherry', 'Date', 'Elderberry']

print(items) 


```


**`pop()` を使う方法**


```python


items

 = ["Apple", "Banana", "Cherry", 

"Date", "Elderberry"]


# インデックス 0 の要素を削除し、その値を取得

removed_item = items.pop(0)  


# ['Banana', 'Cherry', 'Date', 'Elderberry']

print(items)        


# Apple

print(removed_item) 


```

- `pop(index)` は、

指定した **添え字の要素を削除し、その値を取得** できます。


- `del` は削除のみ行い、戻り値はありません。


**まとめ**


| メソッド | 指定方法 | 戻り値 | 備考 |

|----------|----------|--------|----------------|

| `remove(value)` | 要素名 | なし | 最初に見つかった該当要素を削除 |

| `del list[index]` | 添え字 | なし | 指定のインデックスの要素を削除 |

| `pop(index)` | 添え字 | 削除した値 | 指定のインデックスの要素を削除して取得 |


要素を指定して削除する場合は `remove()`、

  

インデックスを指定して削除する場合は 

`del` または `pop()` を使いましょう!


コメント