如何处理字典中缺少密钥?

Dou*_*las 0 python dictionary exception-handling

我有这行代码,用第一个字母将列表中的单词组织成字典:

for a in list: dictionary[a[0]].append(a)
Run Code Online (Sandbox Code Playgroud)

问题是,这需要每个字典键分别具有空列表值.我之前可以通过添加一些额外的代码来实现这一点,但我想知道是否有办法让前一行代码处理这个问题.

这是伪代码:

  • 如果密钥存在,请插入一个dictionary[a[0]].
  • 如果没有,请创建带有空列表的密钥执行此操作.

有没有办法可以在一行代码中执行此操作?

MrA*_*ley 7

您可以使用a defaultdict而不必更改您的代码行:

from collections import defaultdict
dictionary = defaultdict(list)

for a in list: dictionary[a[0]].append(a)
Run Code Online (Sandbox Code Playgroud)