引用元组列表中的元素

Tur*_*hes 20 python tuples element reference list

提前抱歉,但我是Python的新手.我有一个列表tuples,我想知道如何引用tuple列表中每个元素的第一个元素.我觉得它就像是

for i in number_of_tuples :
  first_element = myList[i[0]]
Run Code Online (Sandbox Code Playgroud)

你知道[list_element[tuple_element]]吗?但是,这似乎不是正确的方法.任何帮助将不胜感激.

谢谢,

车工

Pro*_*tro 37

这里的所有其他答案都是正确的,但不解释为什么你所尝试的是错误的.当你这样做时,myList[i[0]]你告诉Python这i是一个元组,你想要元组的值或第一个元素i作为myList的索引.

在大多数编程语言中,当您需要访问嵌套数据类型(例如数组,列表或元组)时,您可以附加括号以到达最里面的项目.第一个括号为您提供列表中元组的位置.第二个括号为您提供元组中项目的位置.

这是我提出的一个快速的基本例子:

info = [ ( 1, 2), (3, 4), (5, 6) ]

info[0][0] == 1
info[0][1] == 2
info[1][0] == 3
info[1][1] == 4
info[2][0] == 5
info[2][1] == 6
Run Code Online (Sandbox Code Playgroud)


Mat*_*all 30

您可以使用列表解析获取每个元组中第一个元素的列表:

>>> my_tuples = [(1, 2, 3), ('a', 'b', 'c', 'd', 'e'), (True, False), 'qwerty']
>>> first_elts = [x[0] for x in my_tuples]
>>> first_elts
[1, 'a', True, 'q']
Run Code Online (Sandbox Code Playgroud)


Sve*_*ach 5

代码

my_list = [(1, 2), (3, 4), (5, 6)]
for t in my_list:
    print t
Run Code Online (Sandbox Code Playgroud)

印刷

(1, 2)
(3, 4)
(5, 6)
Run Code Online (Sandbox Code Playgroud)

该循环迭代my_list,并将 的元素my_list一个t接一个地分配。的元素my_list恰好是元组,因此t永远是元组。要访问元组的第一个元素t,请使用t[0]

for t in my_list:
    print t[0]
Run Code Online (Sandbox Code Playgroud)

i要访问列表中给定索引处元组的第一个元素,您可以使用

print my_list[i][0]
Run Code Online (Sandbox Code Playgroud)