Python入門:dict型(辞書型)の使い方(キー・値の修正や要素の追加方法)

  • 2019.11.08
  • (更新日:2020.03.19)
  • python
Python入門:dict型(辞書型)の使い方(キー・値の修正や要素の追加方法)

dict型とは、dictionary(辞書)の事で、キー(key)と値(value)をペアで保存し、キーを使って呼び出す。
list型よりも少し複雑ですが、list型と同様に実際によく使われるので、しっかり理解しましょう。

この記事では、dict型の基本的な使い方から、値の修正や要素の追加や削除 、ソート方法といった応用まで詳しく掲載します。

dict型の基本的な使い方

作成方法

キー(key)と値(value)をペアで保存し、キーを使って呼び出します。
記述の仕方は、キーと値をコロン(;)でつなげて一組の要素とし、要素間を,で区切り全体を{ }で囲います。

>>> umaibo_dict = {1:'mentai',2:'piza',3:'sarada'}

これで、umaibo_dict(うまい棒辞書)が完成します。
また「うまい棒」例えかよ!と思ったワンカップ好きで、歯の本数が4本のワンカッパーのあなた。
安心しないでください。永遠に「うまい棒」例えで行く予定です。

空要素の作り方

「大好きなうまい棒のdict型を作りたいけど、どの味にするか決められないよー!」
と言う方は、空要素も作れますので、安心してください。
作り方は、「辞書名 = {}」で作成できます。

呼び出し方

呼び出し方は簡単でキー値を使って、「辞書名[キー値]」で呼び出します。

>>> umaibo_dict[1]
>>> ‘mental’

当たり前ですが、存在しないキー値を指定するとエラーになります。

存在しないキー値を指定した場合

>>> umaibo_dict[4]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 4

このように、簡素な英語で冷たくなじられます。

値の修正

一度作成った辞書型の値を修正することも出来ます。
修正方法は、「辞書名[キー値] = 値」で記述します。

キー値3のsaradaからsaramiへの修正方法

>>> umaibo_dict = {1:'mentai',2:'piza',3:'sarada'}
>>> umaibo_dict[3] = 'sarami'
>>> print(umaibo_dict)
{1: 'mentai', 2: 'piza', 3: 'sarami'}

はい。修正完了です。でも「sarada」と「sarami」だとあまり変わった気がしませんね。
例題が下手過ぎです。

要素の追加方法

Dict型は要素の追加が可能です。追加の方法は「辞書名[キー値] = 値」で記述します。

>>> umaibo_dict = {1:'mentai',2:'piza',3:'sarada}
>>> umaibo_dict[4] = 'takoyaki'
>>> print(umaibo_dict)
{1: 'mentai', 2: 'piza', 3: 'sarada', 4: 'takoyaki'}

printを使ってumaibo_dictに追加した要素を確認すると、見事に「4:’takoyaki’」が追加されています。

要素の削除

要素の削除は、popとclearのメソッドを使って削除します。
まずは、popメソッドの方を説明します。

popメソッドでの削除方法

記述の仕方は「辞書名.pop(キー値)」です。

新しく追加した「4:’takoyaki’ 」 を削除してみましょう。

>>> print(umaibo_dict)
{1: 'mentai', 2: 'piza', 3: 'sarada', 4: 'takoyaki'}
>>> umaibo_dict.pop(4)
'takoyaki'
>>> print(umaibo_dict)
{1: 'mentai', 2: 'piza', 3: 'sarada'}

見事に削除されました。

clearメソッドの削除方法

popメソッドと違い、clearメソッドは、要素を全部削除します。
記述の仕方は「辞書名.clear()」です。

>>> umaibo_dict.clear()
>>> print(umaibo_dict)
{}

全部きえちゃった。。。

ソートの方法

はい。ソート(並べ換え)もsorted関数で可能です。

記述の仕方は、「変数名 = sorted(辞書名.items())」です。

>>> umaibo_dict = {3:'sarada',2:'piza',1:'mentai'}
>>> sort_umaibo = sorted(umaibo_dict.items())
>>> print(sort_umaibo)
[(1, 'mentai'), (2, 'piza'), (3, 'sarada')]

キー値が昇順にソートされました。

注意点

辞書型をソートした戻り値は、list型となりますのでお気をつけてね。

その他のデータ型については以下に詳しく掲載しています。

python:データ型の種類と使い方を解説

pythonカテゴリの最新記事