Python 当dict值是一个列表时,返回字典值的索引

Python 当dict值是一个列表时,返回字典值的索引,python,dictionary,Python,Dictionary,我有一本结构如下的词典: key: [value1, value2, value3, value4, value5] 我想访问value2和value3,但db.values()返回dict中的所有键,db.values()[0]返回第一个键。是否有一种方法可以访问我字典中每个键的所有“value2s”和“values3”?您可以使用列表理解中的切片来完成此操作 [value[1:3] for value in d.values()] 范例 >>> d = {'a': [

我有一本结构如下的词典:

 key: [value1, value2, value3, value4, value5]

我想访问value2和value3,但db.values()返回dict中的所有键,db.values()[0]返回第一个键。是否有一种方法可以访问我字典中每个键的所有“value2s”和“values3”?

您可以使用列表理解中的切片来完成此操作

[value[1:3] for value in d.values()]
范例

>>> d = {'a': [1,2,3,4,5], 'b': [2,4,6,8,10], 'c': [1,1,1,1,1]}
>>> [value[1:3] for value in d.values()]
[[1, 1], [4, 6], [2, 3]]

您可以在列表中使用切片来完成此操作

[value[1:3] for value in d.values()]
范例

>>> d = {'a': [1,2,3,4,5], 'b': [2,4,6,8,10], 'c': [1,1,1,1,1]}
>>> [value[1:3] for value in d.values()]
[[1, 1], [4, 6], [2, 3]]

如果你不需要任何东西的键,你可以使用
values()
而不是
items()
。这会更有意义,不是吗?:)我会使用
itervalues()
。我打赌这会更快。:)@wenzul-
dict.itervalues
将是最快的,但仅在Python2.x上。在Python3.x中,
dict.values
已经很懒惰了。这非常有效,Python的干净性一直让我感到惊讶。如果您不需要任何键,您可以使用
values()
而不是
items()
。现在这会更有意义,不是吗?:)我会使用
itervalues()
。我打赌这会更快。:)@wenzul-
dict.itervalues
将是最快的,但仅在Python2.x上。在Python3.x中,
dict.values
已经很懒惰了。这非常有效,Python的干净性从未停止让我惊讶。