python 辞書(連想配列)の値を削除する

python 辞書(連想配列)の値を削除する

pythonで、連想配列のような辞書の値を追加するサンプルコードを記述してます。

環境

  • OS windows10 pro 64bit
  • python 3.8.5

値を削除

delを使用すると、削除を行うことが可能です。

d = {'x': 10, 'y': 20}

del d['x']

print(d)
# {'y': 20}

複数の値を削除するには、以下のように記述します。

d = {'x': 10, 'y': 20}

del d['x'],d['y']

print(d)
# {}

存在しないキーを指定すると、エラーになります。

d = {'x': 10, 'y': 20}

del d['z']

print(d)
# KeyError: 'z'

popを使用して、削除することも可能です。

d = {'x': 10, 'y': 20}

d.pop('x')

print(d)
# {'y': 20}

こちらも、存在しないキーを指定すると、エラーになりますが、

d = {'x': 10, 'y': 20}

d.pop('z')

print(d)
# KeyError: 'z'

popの引数に、メッセージを指定するとエラーは起こりません。

d1 = {'x': 10, 'y': 20}

d2 = d1.pop('z','keyError')

print(d1)

print(d2)

popitemを使用すると、最後のキーのみを削除することが可能です。

d1 = {'x': 10, 'y': 20, 'z': 30}

d2 = d1.popitem()

print(d1)
# {'x': 10, 'y': 20}

print(d2)
# ('z', 30)

全て削除する場合は、clearを使用します。

d = {'x': 10, 'y': 20, 'z': 30}

d.clear()

print(d)
# {}