Query Python dictionary to get value from tuple

两盒软妹~` 提交于 2019-11-30 19:43:42

Just keep indexing:

>>> D = {"Key1": (1,2,3), "Key2": (4,5,6)}
>>> D["Key2"][2]
6

Use tuple unpacking:

for key, (valX, valY, valZ) in dict.iteritems():
       ...

Often people use

for key, (_, _, valZ) in dict.iteritems():
       ...

if they are only interested in one item of the tuple. But this may cause problem if you use the gettext module for multi language applications, as this model sets a global function called _.

As tuples are immutable, you are not able to set only one item like

d[key][0] = x

You have to unpack first:

x, y, z = d[key]
d[key] = x, newy, z

Using a generator expression!

for val in (x[2] for x in dict):
    print val

You don't need to use iteritems because you're only looking at the values.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!