Python 辞書(Dictionary) get()メソッド
説明
Python 辞書(Dictionary)get()関数は指定されたキーの値を返します。
構文
get()メソッドの構文:
dict.get(key[, value])
引数
- key -- 辞書内で検索するキー。
- value -- 任意指定、指定したキーの値が存在しない場合、このデフォルト値を返します。
戻り値
指定されたキーの値を返します。キーが辞書にない場合はデフォルト値を返します。Noneまたは設定されたデフォルト値。
例
以下の例は示していますget()関数の使用方法:
例
#!/usr/bin/python
# -*- coding: UTF-8 -*-
tinydict = {'Name': 'サンプル', 'Age': 27}
print ("Age : %s" % tinydict.get('Age'))
# Sexを設定していない、デフォルト値も設定していないため、Noneが出力されます
print ("Sex : %s" % tinydict.get('Sex'))
# Salaryを設定していないため、デフォルト値 0.0 が出力されます
print ('Salary: %s' % tinydict.get('Salary', 0.0))
# -*- coding: UTF-8 -*-
tinydict = {'Name': 'サンプル', 'Age': 27}
print ("Age : %s" % tinydict.get('Age'))
# Sexを設定していない、デフォルト値も設定していないため、Noneが出力されます
print ("Sex : %s" % tinydict.get('Sex'))
# Salaryを設定していないため、デフォルト値 0.0 が出力されます
print ('Salary: %s' % tinydict.get('Salary', 0.0))
上記の例の出力結果は次のとおりです:
Age : 27 Sex : None Salary: 0.0
get() メソッド vs dict[key] による要素アクセスの違い
get(key) メソッドは、key(キー)が辞書にない場合、デフォルト値を返すことができますNoneまたは設定されたデフォルト値。
dict[key]key(キー)が辞書にない場合、発生するのはKeyError例外です。
例
>>> サンプル = {}
>>> print('URL: ', サンプル.get('url')) # Noneを返します
URL: None
>>> print(サンプル['url']) # KeyErrorを発生させます
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'url'
>>>
>>> print('URL: ', サンプル.get('url')) # Noneを返します
URL: None
>>> print(サンプル['url']) # KeyErrorを発生させます
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'url'
>>>
ネスト辞書の使用
get()ネスト辞書に対するメソッドの使用方法は次のとおりです:
例
#!/usr/bin/python
# -*- coding: UTF-8 -*-
tinydict = {'サンプル' : {'url' : 'www.example.com'}}
res = tinydict.get('サンプル', {}).get('url')
# 出力結果
print("サンプル url は : %s" % str(res))
<p>上記の例の出力結果は次のとおりです:</p>
<pre>
サンプル url は : www.サンプル.com
</pre>
# -*- coding: UTF-8 -*-
tinydict = {'サンプル' : {'url' : 'www.example.com'}}
res = tinydict.get('サンプル', {}).get('url')
# 出力結果
print("サンプル url は : %s" % str(res))
<p>上記の例の出力結果は次のとおりです:</p>
<pre>
サンプル url は : www.サンプル.com
</pre>
Python 辞書