dict(Pythonのmap)

最終更新日27 Feb 2018 14:23

外側が{}で囲まれてて、
間に"キー":""になってるのがdictである

# 例
dic = {'name':'Taro', 'age': 26}
# 空の辞書
dic = {}

単純に重複を取り除きたいだけならばsetを使う方が簡単

値を取り出す

値を取得するには「辞書オブジェクト[キー]」を使います。

dic = {'name':'Taro', 'age':26}
dic['name']
'Taro'

キーが存在しない場合はKeyErrorの例外が送出されます。

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'sex'

キーの有無を調べる

dic={}
if "A" in dic:
    a = dic["A"]#上のif分なしでやるとKeyErrorになって止まる
a=dic.get("A")#keyがなければNoneになる関数
if not a:
    #"A"キーがまだ存在しない場合にやりたい処理をやる

'e' in kwargsの時点でTrueかFalseが返ってくる文になっております

2重構造のdict

{'selection': {
    'title': '選択肢の英単語', 
    'created_at': '2013-01-28T13:57:01+00:00', 
    'title_shown': '選択肢の英単語', 
    'fullname': 'selection', 
    'tags': [], 
    'rating': 0,
     'updated_by': 'miffysora',
     'created_by': 'miffysora', 
    'revisions': 1, 
    'parent_fullname': 'toeic', 
    'updated_at': '2013-01-28T13:57:14+00:00'}, 
'news': {
    'title': 'ニュース関係の英語', 
    'created_at': '2013-02-05T12:41:15+00:00', 
    'title_shown': 'ニュース関係の英語', 
    'fullname': 'news', 
    'tags': [], 'rating': 0, 'updated_by': 'miffysora', 'created_by': 'miffysora', 'revisions': 1, 'parent_fullname': 'toeic', 'updated_at': '2013-02-05T12:41:25+00:00'},
 'money': {'title': 'お金関係の英語', 'created_at': '2012-08-21T23:52:07+00:00', 'title_shown': 'お金関係の英語', 'fullname': 'money', 'tags': [], 'rating': 0, 'updated_by': 'miffysora', 'created_by': 'miffysora', 'revisions': 30, 'parent_fullname': 'toeic', 'updated_at': '2013-09-05T03:50:15+00:00'},
 'company': {'title': '会社・求人関連の英語', 'created_at': '2013-01-24T13:04:09+00:00', 'title_shown': '会社・求人関連の英語', 'fullname': 'company', 'tags': ['job'], 'rating': 0, 'updated_by': 'miffysora', 'created_by': 'miffysora', 'revisions': 17, 'parent_fullname': 'toeic', 'updated_at': '2013-08-31T14:29:17+00:00'}, 
'party': {'title': '飲み会関係の英語', 'created_at': '2013-01-24T13:23:38+00:00', 'title_shown': '飲み会関係の英語', 'fullname': 'party', 'tags': [], 'rating': 0, 'updated_by': 'miffysora', 'created_by': 'miffysora', 'revisions': 1, 'parent_fullname': 'toeic', 'updated_at': '2013-01-24T13:27:59+00:00'}
}

走査する

for key, value in myDict.items():
    print("%s %s" % (key, value))
#キーだけ走査
for key in myDict.keys():
   print(key)
#値だけ走査
for val in dic.values():
    print(val)
#インデックスとともに走査
for i,item in enumerate(dic.items()):
    print(u"%d番目 内容=%s"%(i,item))

dict の値をリストにしたい場合

    if key not in map:    #keyがあるかチェック
        map[key] = []     #値であるリストの初期化
    map[key].append(value) #値を追加する

map


ファイル

サポートサイト Wikidot.com map