2015-10-17 50 views
1

我有一本字典如下:对于给定的键访问列表值的第n个元素:Python字典

d = {key: [val1, val2, val3....], key2: [valx, valy, valz, ...], ....}

是否有可能获得价值列表的第n个元素?例如:d{key2:[2]}将返回'valz'

我试图d.get({key:[0]})但得到:

"TypeError: unhashable type: 'dict'"

你的指针赞赏。
谢谢。

回答

1

要获得valz只需使用d[key2][2]

+0

这不起作用,因为字典没有顺序。 – ppperry

+0

@ppperry是的,这是一个错误! – cdonts

+0

这是一个命令的问题? 'd [key2]'获得'key2'的值,这恰好是一个列表;追加'[2]'将给列表中位置2的项目。 –

2

d[key][0]对我来说是诀窍,除非我误解了这个问题。

+0

这工作;尽管我必须为IndexError做异常处理。出于某种原因我得到索引超出范围错误。谢谢你们 !! – tad

+0

太好了。你打算让我的答案正确吗? :-) –

+0

我做到了,但它说我必须赚取15声望我的反馈上市:(。 – tad

0

您的问题是d.get({key:[0]})等于d [{key:[0]}],amd字典是字典中的非法键。正确的解决方案是d[key][0]

相关问题