6

我有一个这样的 2 元组列表:

l = [('a', 1), ('b', 2)]

我希望能够将它映射到一个字典对象上,这样我就可以做类似的事情

l.a #=> 1

所以我尝试了这个,但为什么它失败了?

d = reduce(lambda y,x : y.update({x[0]:x[1]}),l,{})

这给出了错误:

AttributeError:“NoneType”对象没有属性“更新”

我究竟做错了什么?

4

2 回答 2

21
>>> l = [('a', 1), ('b', 2)]
>>> d = dict(l)
>>> d['a']
1 
于 2011-05-20T13:19:41.623 回答
4

为什么不这样做:

d = dict(l)

另外,要回答您的问题,您的解决方案失败了,因为y(这是一个 2 元组)没有方法更新,因为它不是字典。值得庆幸的是,您正在做的事情是内置的。

于 2011-05-20T13:20:07.873 回答