单词按首字母分类
任务:将单词列表按首字母分类成列表字典
words = ['well', 'you', 'can', 'teach', 'seem', 'someone', 'how', 'to', 'prepare', 'for', 'however']
map = {}
for word in words:
# 提取首字母
start = word[0]
if start not in map:
map[start] = [word]
else:
map[start].append(word)
for key in map.keys():
print('{}:{}'.format(key, map[key]))
输出结果:
w:['well']
y:['you']
c:['can']
t:['teach', 'to']
s:['seem', 'someone']
h:['how', 'however']
p:['prepare']
f:['for']
第二种方法 - setdefault()
setdefault()
和get()
类似,- 如果键不存在于字典中,将会添加键并将值设为默认值。
setdefault()
语法:dict.setdefault(key, defaul)
key
– 查找的键值。default
– 键不存在时,设置的默认键值。
map = {}
for word in words:
start = word[0]
map.setdefault(start, []).append(word)
for key in map.keys():
print('{}:{}'.format(key, map[key]))
输出结果同上