我有一个包含元组的列表。每个元组包含2个元素。我尝试使用以下代码打印它,但它给出了错误消息:
TypeError: list indices must be integers or slices, not tuple
相关代码:
for i in list:
for j in [1, 2]:
print(list[i][j])
打印第一元组的每个元素的想法,第二元组的每个元素等
答案 0 :(得分:3)
在循环中实现i
实际上是一个元组(列表的元素)。因此,您只需要打印i
的元素i[j]
。 list[i]
没有意义,因为i
应该是一个整数,但它实际上是列表的一个元素,即元组。您还必须收到类似TypeError: list indices must be integers, not tuple
的错误。好吧,我。所以这应该是对你的暗示/解释。
lst = [(1,2),(5,9)]
for i in lst:
for j in [0, 1]:
print(i[j])
print
输出:
1 2
5 9
答案 1 :(得分:1)
您可以在for循环中解压缩元组
>>> tup_list = [(1,2), (3,4)]
>>> for a,b in tup_list:
... print(a,b)
...
1 2
3 4
答案 2 :(得分:0)
您可以使用嵌套列表理解:
[i for subset in list for i in subset] give you flat list
它更加pythonic!