📅  最后修改于: 2023-12-03 15:11:00.140000             🧑  作者: Mango
Python中的字典是一种非常方便的数据结构,它可以将一个键映射到一个值。但是有时候我们需要在一个键下存储多个值,这时候可以使用Python中的一些数据结构来实现。
第一种方法是在字典的值中使用列表来存储多个值。例如:
d = {'a': [1, 2], 'b': [3, 4]}
这样我们就可以通过d['a']
来访问键'a'
下面存储的两个值1
和2
。列表可以使用append()
方法来添加值。
d['a'].append(3)
这样值就变成了[1, 2, 3]
。
第二种方法是在字典的值中使用集合来存储多个值。可以使用Python的内置collections
模块中的defaultdict
类来实现。例如:
from collections import defaultdict
d = defaultdict(set)
d['a'].add(1)
d['a'].add(2)
d['b'].add(3)
这样每个键下面的值都是一个集合,可以使用add()
方法来添加值。在上面的例子中,d
的原始值是一个空的字典,当我们用d['a'].add(1)
添加键值对时,Python会自动创建一个空的集合,并让d['a']
指向这个集合。
第三种方法是在字典的值中使用元组来存储多个值。例如:
from collections import defaultdict
d = defaultdict(list)
d['a'].append((1, 'one'))
d['a'].append((2, 'two'))
d['b'].append((3, 'three'))
这样每个键下面的值都是一个元组,可以使用append()
方法来添加值。在上面的例子中,d
的原始值是一个空的字典,当我们用d['a'].append((1, 'one'))
添加键值对时,Python会自动创建一个空的列表,并让d['a']
指向这个列表。
无论使用哪种方法,我们都可以很轻松地在一个键下面存储多个值。