Python入門(七)dict
2686 ワード
Pythonのdictは、関連配列またはハッシュテーブルとも呼ばれ、キーと値のペアからなる.
1. dictの作成:{}で囲まれ、キーと値の間で使用:分割、各キー値ペアの間で使用、分割
注意:キーはユニークで、文字列、数字、tupleなどの可変でなければなりません.
値は任意のタイプで変更できます.
2. dictの要素へのアクセスdictの要素へのアクセス:キーによるアクセス
ただし、アクセスするキーが存在しない場合、例外が発生します.
この問題を避けるにはget法で判断することができます
dict全体を巡る
3. 要素の追加/削除
要素の値の変更
4. dictその他の一般的な方法:
1)copy():dictのすべての要素をコピー
2)clear():dictのすべての要素をクリア
3)keys():dict内のすべてのキーをリストで返す
4)values():dictのすべての値をリストで返す
5)len():dict内の要素の個数を取得する
dictは実際の開発において非常に有用であり,例えばhttpのサービスプログラムを記述する際にhttpのリクエストヘッダの各フィールドをdictに格納することができ,使用も非常に便利である.
1. dictの作成:{}で囲まれ、キーと値の間で使用:分割、各キー値ペアの間で使用、分割
dict1 = {'name':'billy', 'age':28}
print(dict1)
>>> {'age': 28, 'name': 'billy'}
注意:キーはユニークで、文字列、数字、tupleなどの可変でなければなりません.
値は任意のタイプで変更できます.
2. dictの要素へのアクセスdictの要素へのアクセス:キーによるアクセス
print(dict1['name']
>>> billy
print(dict1['age'])
>>> 28
ただし、アクセスするキーが存在しない場合、例外が発生します.
print(dict1['sex'])
Traceback (most recent call last):
File "<pyshell#4>", line 1, in <module>
print(dict1['sex'])
KeyError: 'sex'
この問題を避けるにはget法で判断することができます
value = dict1.get('sex') # value = None
if value:
print('the value of sex exist')
else:
print('the value of sex does not exist')
>>> the value of sex does not exist
dict全体を巡る
#method 1
for k in dict1:
print(k, dict1[k])
>>>
age 28
name billy
#method 2
for (k,v) in dict1.items():
print(k, v)
>>>
age 28
name billy
#method 3
for k in dict1.keys():
print(k, dict1[k])
>>>
age 28
name billy
3. 要素の追加/削除
#
dict1['sex'] = 'male'
print(dict1)
>>> {'sex': 'male', 'age': 28, 'name': 'billy'}
#
del dict1['sex']
print(dict1)
>>> {'age': 28, 'name': 'billy'}
# ,
del dict1['sex']
Traceback (most recent call last):
File "<pyshell#42>", line 1, in <module>
del dict1['sex']
KeyError: 'sex'
# get , !
要素の値の変更
dict1['age'] = 25
print(dict1)
>>> {'age': 25, 'name': 'billy'}
4. dictその他の一般的な方法:
1)copy():dictのすべての要素をコピー
dict2 = dict1.copy()
print(dict2)
>>> {'name': 'billy', 'age': 25}
2)clear():dictのすべての要素をクリア
dict2.clear()
print(dict2)
>>> {}
3)keys():dict内のすべてのキーをリストで返す
for k in dict1.keys():
print(k)
>>>
age
name
4)values():dictのすべての値をリストで返す
for v in dict1.values():
print(v)
>>>
25
billy
5)len():dict内の要素の個数を取得する
print(len(dict1))
>>> 2
dictは実際の開発において非常に有用であり,例えばhttpのサービスプログラムを記述する際にhttpのリクエストヘッダの各フィールドをdictに格納することができ,使用も非常に便利である.