辞書の要素を削除する方法として 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 された辞書は元データの影響を受けていません。