2018.5.25(python)辞書の作成方法と辞書タイプの使い方

5323 ワード

ディクショナリ変数では、キーを使用して値を取得します.
={:,......,:}
=[]        []=
Python辞書(Dictionary)fromkeys()関数は、シーケンスseqの要素を辞書のキーとし、valueを辞書のすべてのキーに対応する初期値とする新しい辞書を作成するために使用されます.
dict.fromkeys(seq[, value])
seq--辞書キー値リスト.value--オプションのパラメータで、キーシーケンス(seq)の値を設定します.
辞書の最も主要な役割:キー値のデータに対する表現、さらにそれらを操作する
1.
>>> d={'name':'Allen','age':21,'gender':'male'}
>>> d
{'age': 21, 'name': 'Allen', 'gender': 'male'}


2.動的割当てキー値:
>>> d={}
>>> d['name']='Allen'
>>> d['age']=21
>>> d['gender']='male'
>>> d
{'age': 21, 'name': 'Allen', 'gender': 'male'}


辞書のフィールドを動的に作成する必要がある場合は、この方法が適切です.
辞書はリストと異なり、オフセット量でコピーすることはできません.キーでしか読み取れません.また、辞書に値を割り当てることもできます.もちろん、存在しないキーにアクセスするとエラーが発生します.
>>> d[1]='abcd'
>>> d
{1: 'abcd', 'age': 21, 'name': 'Allen', 'gender': 'male'}
>>> d[2]
Traceback (most recent call last):
  File "", line 1, in 
    d[2]
KeyError: 2


3.ディクショナリキー値テーブル
>>> c = dict(name='Allen', age=14, gender='male')
>>> c
{'gender': 'male', 'name': 'Allen', 'age': 14}


この形式に必要なコードは定数より少ないですが、キーは文字列でなければなりません.そのため、次のコードはエラーを報告します.
>>> c = dict(name='Allen', age=14, gender='male', 1='abcd')
SyntaxError: keyword can't be an expression


4.ディクショナリキー値タプルテーブル
>>> e=dict([('name','Allen'),('age',21),('gender','male')])
>>> e
{'age': 21, 'name': 'Allen', 'gender': 'male'}


プログラムの実行時にキーと値をシーケンス化する必要がある場合は、この方法が役立ちます.
5.すべてのキーの値が同じか、初期値が与えられます.
>>> f=dict.fromkeys(['height','weight'],'normal')
>>> f
{'weight': 'normal', 'height': 'normal'}