Python の辞書から要素を削除する
辞書の要素を削除する方法として pop、clear、del があります。
pop
pop は辞書から要素を削除し、引数にしたキーの値を出力します。
countries = {'France': 0.7, 'Japan': 1.2, 'US': 3.4}
value = countries.pop('Japan')
print(value) # 1.2
print(countries) # {'France': 0.7, 'US': 3.4}存在しないキーを指定するとエラーが起きます。
countries = {'France': 0.7, 'Japan': 1.2, 'US': 3.4}
value = countries.pop('Germany')
# KeyError: 'Germany'
clear
countries = {'France': 0.7, 'Japan': 1.2, 'US': 3.4}
countries.clear()
print(countries) # {}del
countries = {'France': 0.7, 'Japan': 1.2, 'US': 3.4}
del countries['France']
print(countries) # {'Japan': 1.2, 'US': 3.4}補足:辞書のコピーと削除
import copy
countries = {'France': 0.7, 'Japan': 1.2, 'US': 3.4}
items = countries
copied = copy.copy(countries)
deep_copied = copy.deepcopy(countries)
countries.pop('US')
print(countries) # {'France': 0.7, 'Japan': 1.2}
print(items) # {'France': 0.7, 'Japan': 1.2}
print(copied) # {'France': 0.7, 'Japan': 1.2, 'US': 3.4}
print(deep_copied) # {'France': 0.7, 'Japan': 1.2, 'US': 3.4}copy または deepcopy された辞書は元データの影響を受けていません。