Pythonデータ型のDict辞書の例の詳細

3496 ワード

この例では、Pythonデータ型のDict辞書について説明します.皆さんの参考にしてください.具体的には以下の通りです.
dict辞書
1.概要
dictもlistやtupleに似た記憶方式であるが,辞書はキー値(key−value)の形式で記憶される.
利点:検索速度が非常に速い.
2.keyの特性
①辞書のkeyは一意でなければならない②**.keyは可変オブジェクトでなければなりません**
たとえば、文字列、整数などは可変ではなく、keyとして使用できます.
リストは可変でkeyにはできません
適用シーンの例:学生の成績を保存する
辞書を採用して、学生の学号あるいは名前をkeyとして、成績はvalueで記憶して、探しやすいです.
3.辞書の作成
構文:
辞書名={キー1:値1,キー2:値2,...}

dist1 = {'tom':90,'lili':78, 'lele':92}
print(dist1)
print(dict(a=1,b=2,c=3))


出力:
{'tom': 90, 'lili': 78, 'lele': 92} {'a': 1, 'b': 2, 'c': 3}
3.1リストのタプル辞書:

list1= [('a',1),('b',2)]
print({a:b for a,b in list1})
>>>{'a': 1, 'b': 2}


4.辞書操作
4.1アクセス要素
構文:要素=辞書名[key]

dist1 = {'tom':90,'lili':78, 'lele':92}
print(dist1['tom'])


出力:
90
注意:keyが存在しない場合、エラーが発生します.
構文:要素=辞書名.get(key)
機能:getメソッドを使用して値を取得し、keyが存在する場合valueの値を返し、keyが存在しない場合Noneを返します.

dist1 = {'tom':90,'lili':78, 'lele':92}
value = dist1.get('tom')
print(value)


出力:
90
4.2要素の追加
構文:辞書名[key]=value

dist1 = {'tom':90,'lili':78, 'lele':92}
dist1['lisi'] = 89
print(dist1)


出力:
{'tom': 90, 'lili': 78, 'lele': 92, 'lisi': 89}
注意:1つのkeyは1つのvalueにしか対応できず、1つのkeyのvalueに何度も値を割り当て、後ろの値は前の値を上書きします.
4.3要素の削除
文法:辞書名.pop(key)

dist1 = {'tom':90,'lili':78, 'lele':92}
print(dist1.pop('tom'))
print(dist1)


出力:
90 {'lili': 78, 'lele': 92}
5.辞書の遍歴
ディクショナリはメモリに格納されるのが無秩序なため、下付きで値を取得できません.
5.1 forループを使用する
構文:
取得キー
for key in dict: ​ print(key)
値の取得
for value in dict.values() : ​ print(value)
キーと値の同時取得
for k, v in dist.items() : ​ print(k, v)

dict1 = {'tom':90,'lili':78, 'lele':92}
#     key
for key in dict1:
 print(key)
#      value 
for value in dict1.values():
 print(value)
#        key value
for k, v in dict1.items():
 print(k, v)


出力:
tom lili lele 90 78 92 tom 90 lili 78 lele 92

#          
dict1 = {'tom':90,'lili':78, 'lele':92}
for i,v in enumerate(dict1):
 print(i,v,dict1[v])


出力:
0 tom 90 1 lili 78 2 lele 92
5.2辞書の調整

d ={'d': 4, 'a': 1, 'b': 2, 'c': 3}
d = {v: k for k, v in d.items()}
print(d)


出力:
{4: 'd', 1: 'a', 2: 'b', 3: 'c'}
6.リストとの違い
1.distの検索と挿入の速度は極めて速く、key-valueの増加に伴って遅くなることはありませんが、listは検索時に要素を最初から後ろに遍歴する必要があり、データ量が大きくなると速度も遅くなります.
2.distは大量のメモリを消費する必要があり、メモリの浪費が多いが、listは辞書のkeyまたはvalue部分を格納することに相当し、データは緊密に配列されている.
Pythonに関する詳細について興味のある読者は、「Python辞書操作テクニックまとめ」、「Pythonリスト操作テクニックまとめ」、「Pythonコード操作テクニックまとめ」、「Python関数使用テクニックまとめ」、「Python文字列操作テクニックまとめ」、「Python入門と進級クラシックチュートリアル」を参照してください.
ここではPythonプログラムの設計に役立つことを願っています.