【Python】 辞書(ディクショナリー)徹底解説!!

Python

こんにちは!hikaruです!

プログラミング初心者の方向けにPythonでの辞書(ディクショナリー)をわかりやすく解説します。

辞書とは

Pythonでの辞書とは、ディクショナリー(dictionary)型のリストです。

リスト(配列)とは、「【Python】 リスト(配列)徹底解説!!」を参考にしてください。

辞書では、key(キー)とvalue(バリュー)の2つの値で、一つの要素です。

frtsDct = {'apple': 100,  'orange': 120, 'banana': 150}
print(frtsDct)
# 出力結果
{'apple': 100, 'orange': 120, 'banana': 150}

キーを出力させる、バリューを出力させる

key(キー)だけ出力させたい時はkeys()メソッドを使用します。

value(バリュー)だけ出力させたい時はvalues()メソッドを使用します。

キーとバリューを出力させたい時はitems()メソッドを使用します。

listメソッドを使用し、見やすくしました。下記を参照してください。

frtsDct = {'apple': 100,  'orange': 120, 'banana': 150}
print(list(frtsDct.keys()))
print(list(frtsDct.values()))
print(list(frtsDct.items()))


# 出力結果
['apple', 'orange', 'banana']
[100, 120, 150]
[('apple', 100), ('orange', 120), ('banana', 150)]

キーを指定しバリューを出力させる

辞書型の変数にキーを[ ]内に指定します。

frtsDct = {'apple': 100,  'orange': 120, 'banana': 150}
print(frtsDct['apple'])
print(frtsDct['orange'])
print(frtsDct['banana'])

# 出力結果
100
120
150

辞書を編集しよう

要素を追加する

要素の追加は、辞書型の変数に追加したいキーを[ ]内に指定し、バリューを格納します。

frtsDct = {'apple': 100,  'orange': 120, 'banana': 150}
frtsDct['strawberry'] = 180
print(frtsDct)

# 出力結果
{'apple': 100, 'orange': 120, 'banana': 150, 'strawberry': 180}

要素(バリュー)の変更

要素の追加は、辞書型の変数に変更したいキーを[ ]内に指定し、バリューを変更します。

frtsDct = {'apple': 100,  'orange': 120, 'banana': 150}
frtsDct['apple']=180
print(frtsDct)

# 出力結果
{'apple': 180, 'orange': 120, 'banana': 150}

要素の削除

辞書の要素を削除する場合は、複数のパターンがあります。

キーを指定して削除

delは、キーを指定して削除します。

frtsDct = {'apple': 100,  'orange': 120, 'banana': 150}
del frtsDct['apple']
print(frtsDct)

# 出力結果
{'orange': 120, 'banana': 150}

複数削除することもできます。

frtsDct = {'apple': 100,  'orange': 120, 'banana': 150}
del frtsDct['apple'],frtsDct['orange']
print(frtsDct)

# 出力結果
{'banana': 150}

戻り値としてvalueを返す(pop())

pop()もキーを指定して削除します。

delとの違いは削除した後valueを返してくれます。

削除する際にvalueを取得したいときに使用しましょう。

ただ削除したいときは、delで構いません。

frtsDct = {'apple': 100,  'orange': 120, 'banana': 150}
applePrice = frtsDct.pop('apple')
print(applePrice)
print(frtsDct)

#出力結果
100
{'orange': 120, 'banana': 150}

末尾を削除する

辞書の末尾の要素を削除をしたいときはpopitem()を使用します。

frtsDct = {'apple': 100,  'orange': 120, 'banana': 150}
frtsDct.popitem()
print(frtsDct)

#出力結果
{'apple': 100, 'orange': 120}

戻り値としてkeyとvalueを返す

変数fruitにキー、変数priceにバリューを格納します。

末尾の要素は削除されます。

frtsDct = {'apple': 100,  'orange': 120, 'banana': 150}
fruit,price = frtsDct.popitem()
print(fruit)
print(price)
print(frtsDct)

#出力結果
banana
150
{'apple': 100, 'orange': 120}

全ての要素を削除する

辞書を初期化したい時はclear()を使用します。

frtsDct = {'apple': 100,  'orange': 120, 'banana': 150}
frtsDct.clear()
print(frtsDct)

# 出力結果
{}

リストから辞書へ変換

2つのリストを辞書へ変換させます。

zipメソッドを使用します。

fruit = ["apple", "orange", "banana", "strawberry"]
price = [100,120,150,200]

frtsDct = dict(zip(fruit,price))

print(frtsDct)

# 出力結果
{'apple': 100, 'orange': 120, 'banana': 150, 'strawberry': 200}

辞書からリストへ変換

辞書から2つのリストへ変換させます。

frtsDct = {'apple': 100,  'orange': 120, 'banana': 150}

fruit = list(frtsDct.keys())
price = list(frtsDct.values())

print(fruit)
print(price)

# 出力結果
['apple', 'orange', 'banana']
[100, 120, 150]

辞書を並び替える

昇順

ソートする際は少しコツが入ります。

初心者の方は読み飛ばしてOKです!コピペして使用するのもOK!

frtsDct = {'apple': 100,  'orange': 120, 'banana': 150,'strawberry': 200}
frtsDct = sorted(frtsDct.items())
frtsDct = dict((fruit,price) for fruit,price in frtsDct)

print(frtsDct)

# 出力結果
{'apple': 100, 'banana': 150, 'orange': 120, 'strawberry': 200}

降順

降順はreverse=Trueを使用します。

frtsDct = {'apple': 100,  'orange': 120, 'banana': 150,'strawberry': 200}
frtsDct = sorted(frtsDct.items(),reverse=True)
frtsDct = dict((fruit,price) for fruit,price in frtsDct)

print(frtsDct)

# 出力結果
{'strawberry': 200, 'orange': 120, 'banana': 150, 'apple': 100}

最後に

如何でしたか(^^)?!

少しでもプログラミングの楽しさが伝わったら、嬉しいです。

プログラミング学習は、頭の体操です。

習うより、慣れろ」です(^^)!

たくさんコーディングして、メキメキと力をつけましょう!!

おすすめのプログラミング学習サイトを紹介します。

環境構築不要で、無料で学習できます。

paizaはCランク問題を解くことで、多くのIT企業からスカウトをもらえるようになります。

プログラミング学習をして、IT業界に就職や転職をしたい方は、paizaがおすすめです(^^)♪

progate
Progate(プロゲート) | Learn to code, learn to be creative.
Progateはオンラインでプログラミングを学べるサービスです。プログラミングを学んでWEBアプリケーションを作ろう。
paiza
ITエンジニア向け転職・就活・学習サービス【paiza】
ITエンジニア・プログラマ専門の総合求職・学習サイト【paiza(パイザ)】。プログラミングスキルチェックで実力を可視化し、スキルがあると認められれば企業からスカウトが届くなど転職が有利に。学歴や職歴ではなく「技術がある人」が評価されるサー...

これからもPython学習を一緒に頑張っていきましょう。

応援しています(^^)

最後までお付き合いいただきまして、ありがとうございます。

よろしければ、下記の関連記事も参考にしてください。

コメント

タイトルとURLをコピーしました