使用Python时,dict可能有一个列表值吗?
例如,一个类似于下面的字典(参见KeyName3的值):
{
keyName1 : value1,
keyName2: value2,
keyName3: {val1, val2, val3}
}
我已经知道我可以使用'defaultdict'但是单个值(可以理解)作为列表返回。
我问的原因是我的代码必须是通用的,以便调用者可以将单个键值作为项目(就像来自dict键值)而不是作为列表(不必指定pop[0]
列表) - 但是也可以将多个值检索为列表。
如果没有,那么欢迎任何劝说。
如果有人可以提供帮助,那就太棒了。
先谢谢,
保
*我正在使用Python 2.6,但编写的脚本也必须与Python 3.0 +向前兼容。
答案 0 :(得分:26)
是。 dict中的值可以是任何类型的python对象。键可以是任何可清除对象(不允许列表,但允许元组)。
您需要使用[]
,而不是{}
来创建列表:
{ keyName1 : value1, keyName2: value2, keyName3: [val1, val2, val3] }
答案 1 :(得分:6)
是的,有可能:
d = {}
d["list key"] = [1,2,3]
print d
输出:
{'list key': [1, 2, 3]}
答案 2 :(得分:0)
它绝对可以有一个列表和任何对象作为值,但字典不能将列表作为键,因为列表是可变数据结构,键不能是可变的,除了它们的用途。