只需一行即可从二维数组中获取子数组

时间:2014-04-22 12:42:05

标签: python arrays find

我在python中尝试从二维数组中查找和获取数组时遇到问题。 我不假装使用for结构来获得这个。有人知道如何只用一行或几行代码来获取这个数组吗?

感谢。

有一个例子:

my_dimensional_array = [(1,'a'),(1,'b'),(2,'c'))]

我需要返回

my_single_array_from_1 = [(1,'a'),(1,'b')]

3 个答案:

答案 0 :(得分:0)

如果您只想排除最后一个元素,可以像这样使用slicing

my_dimensional_array = [(1, 'a'), (1, 'b'), (2, 'c')]
print my_dimensional_array[:-1]
# [(1, 'a'), (1, 'b')]

答案 1 :(得分:0)

您可以使用list comprehension选择my_dimensional_array中第一个值等于1的元素:

In [16]: my_dimensional_array = [(1,'a'),(1,'b'),(2,'c')]

In [17]: [item for item in my_dimensional_array if item[0]==1]
Out[17]: [(1, 'a'), (1, 'b')]

答案 2 :(得分:0)

你可以这样做:

result = [(i,j) for i,j in my_dimensional_array if i==1]