如何访问数据类型列表中的元组中的数据

时间:2015-07-16 12:29:25

标签: python python-2.7

我有这个元组列表:

(u'firstname', u'ABCDEFG'), (u'lastname', u'ZXYVUW')]

如何使用密钥访问数据,例如元组中的firstname?

4 个答案:

答案 0 :(得分:3)

对于第二个元组的第一个元素等,第一个元组l[0][0]的第一个元素可以使用[1][0]建议索引..但是如果你创建一个dict可能是更好的方法知道你想要使用的钥匙:

 l = [(u'firstname', u'ABCDEFG'), (u'lastname', u'ZXYVUW')]

 data = dict(l)

 print(data["firstname"])
 print(data["lastname"])

输出:

ABCDEFG
ZXYVUW

答案 1 :(得分:2)

双下标:

In [29]:
[(u'firstname', u'ABCDEFG'), (u'lastname', u'ZXYVUW')][0][0]

Out[29]:
'firstname'

所以第一个索引值返回第一个元素,即你的元组:

In [30]:
[(u'firstname', u'ABCDEFG'), (u'lastname', u'ZXYVUW')][0]

Out[30]:
('firstname', 'ABCDEFG')

然后再次通过下标访问元组对的第一个元素,如第一个代码段所示

如果要搜索元组列表,可以使用列表推导:

In [32]:
l = [(u'firstname', u'ABCDEFG'), (u'lastname', u'ZXYVUW')]
[item for item in l if item[0] == 'firstname']

Out[32]:
[('firstname', 'ABCDEFG')]

以上假设元组的第一个元素是你的键

答案 2 :(得分:2)

您需要指定索引。

l = [(u'firstname', u'ABCDEFG'), (u'lastname', u'ZXYVUW')]
print l[0][0]

第一个[0]引用列表中的第一个元素(即第一个元组),第二个[0]引用第一个元组中的第一个元素。

答案 3 :(得分:1)

[(u'firstname', u'ABCDEFG'), (u'lastname', u'ZXYVUW')][0][0]
u'firstname'

你可以使用double indexing不知道它的正确名称

单个索引会给出:

[(u'firstname', u'ABCDEFG'), (u'lastname', u'ZXYVUW')][0]
(u'firstname', u'ABCDEFG')

因为您需要第一个数据:

(u'firstname', u'ABCDEFG')[0]
u'firstname'