Python获取子列表元素直到N

在本教程中,我们将编写一个程序,该程序返回一个子列表元素,直到列表中的第n个子列表。假设我们有以下列表和5个子列表。

[['Python','Java'],['C','Pascal'],['Javascript','PHP'],['C#','C ++'],['React','Angular'] ]现在,我们必须从前三个子列表中获取第一个元素。我们可以使元素具有不同的方法。让我们来看一些。

循环

大多数程序员最普遍和最先想到的就是使用循环。我们来看一下使用循环的代码。

示例

# initializing the list and N
random_list = [['Python', 'Java'], ['C', 'Pascal'], ['Javascript', 'PHP'], ['C#
C++'], ['React', 'Angular']]
N = 3
# empty list to store final elements from the sublists
desired_elements = []
# iterating over the list till 3rd element
for i in range(N):
   # storing the first element from the sublist
   desired_elements.append(random_list[i][0])
# printing the elements
print(desired_elements)

输出结果

如果运行上面的代码,则将得到以下结果。

['Python', 'C', 'Javascript']

我们可以使用列表推导代替for循环。让我们看看使用列表推导的相同代码。

示例

# initializing the list and N
random_list = [['Python', 'Java'], ['C', 'Pascal'], ['Javascript', 'PHP'], ['C#
C++'], ['React', 'Angular']]
N = 3
# getting first element from the sublists
desired_elements = [sublist[0] for sublist in random_list[:N]]
# printing the elements
print(desired_elements)

输出结果

如果运行上面的代码,则将得到以下结果。

['Python', 'C', 'Javascript']

使用内置方法

Python提供了许多内置模块和方法。让我们用它们来解决我们的问题,将使用map,itemgetterislice方法来实现预期的输出,让我们看一下代码。

示例

# importing the required methods
import operator # for itemgetter
import itertools # for islice
# initializing the list and N
random_list = [['Python', 'Java'], ['C', 'Pascal'], ['Javascript', 'PHP'], ['C#
C++'], ['React', 'Angular']]
N = 3
# getting first element from the sublists
desired_elements = list(map(operator.itemgetter(0), itertools.islice(random_list, N)))
# printing the elements
print(desired_elements)

输出结果

如果运行上面的代码,则将得到以下结果。

['Python', 'C', 'Javascript']

结论

您可以使用任何元素代替第一个元素。我们已将第一个要素用于演示。如果您对本教程有任何疑问,请在评论部分中提及。