Python通过索引在列表中选择元素

11 浏览
0 Comments

Python通过索引在列表中选择元素

我有一个Python列表,我想从中获取一组索引,并将其保存为原始列表的子集:

templist = [[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]]

我希望得到这样的结果:

   sublist=[[1,    4,    7,                      16,      19,20]]

作为一个例子。

我无法预先知道列表元素的内容。我只知道索引将始终相同。

是否有一种单行的方法来实现这个?

0
0 Comments

Python中有时候我们需要根据给定的索引从列表中选择特定的元素。这个问题的出现可能是因为我们想要从一个较大的列表中提取出特定的元素,并将它们放入一个新的子列表中。

解决这个问题的方法是使用列表推导(list comprehension)和enumerate函数。列表推导是一种简洁的语法,可以根据特定的条件从一个列表中创建一个新的列表。而enumerate函数可以同时返回元素及其索引。

在上述代码中,我们首先定义了一个包含索引的列表indices。然后,我们使用列表推导来遍历原始列表templist中的元素。在这个过程中,我们使用enumerate函数来获取每个元素的索引和值。如果索引存在于indices列表中,我们就将该元素添加到新的子列表sublist中。

通过这种方法,我们可以轻松地根据给定的索引从一个列表中选择特定的元素,并将它们放入一个新的子列表中。这种方法不仅简洁高效,还能提高代码的可读性和可维护性。

0
0 Comments

Python中,有时候我们需要根据给定的索引从列表中选择特定的元素。下面是一个关于如何通过索引选择列表元素的问题及其解决方法。

假设我们已经知道了需要选择的索引,那么可以按照以下方式进行操作:

indices = [1, 4, 7, 16, 19, 20]
templist = [[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21]]
sublist = []
for i in indices:
    sublist.append(templist[0][i])

另外,我们也可以使用列表推导式来实现相同的功能:

sublist = [templist[0][i] for i in indices]

以上的代码中,我们首先定义了一个索引列表`indices`,它包含了我们需要选择的元素的索引。然后,我们创建了一个临时列表`templist`,它包含了我们要选择元素的原始列表。接下来,我们创建了一个空列表`sublist`,用于存储选择的元素。然后,我们使用一个循环遍历索引列表,并通过`templist`中的索引来选择元素,并将其添加到`sublist`中。

另外,我们还可以使用列表推导式来实现相同的功能。列表推导式是一种简洁的方式,它允许我们在一个单独的语句中完成列表的创建和元素的选择。在这个例子中,我们使用列表推导式来创建`sublist`,并通过`templist`中的索引来选择元素。

通过以上的方法,我们可以根据给定的索引从列表中选择特定的元素。这对于需要根据特定条件选择元素的情况非常有用。

0
0 Comments

Python中的列表是一种常用的数据结构,用于存储多个元素。有时候我们需要根据索引来选择列表中的特定元素。例如,我们有一个列表templist,包含了20个元素,我们想选择其中的第1、第4、第7、第16、第19和第20个元素。

在Python中,我们可以使用operator模块中的itemgetter函数来选择列表中的特定元素。itemgetter函数接受一个或多个索引作为参数,并返回一个函数,这个函数可以用于选择列表中对应索引位置的元素。

我们先导入operator模块:

import operator

然后定义一个templist列表,其中包含了20个元素:

templist = [[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]]

接下来,我们使用itemgetter函数来选择templist列表中的第1、第4、第7、第16、第19和第20个元素:

f = operator.itemgetter(0,3,6,15,18,19)

然后,我们使用返回的函数f来选择templist列表中的元素,并将其存储在一个新的列表sublist中:

sublist = [list(f(templist[0]))]

最后,我们打印出sublist列表的内容:

print(sublist)

运行以上代码,我们可以得到选择后的列表sublist:

[[1, 4, 7, 16, 19, 20]]

通过使用itemgetter函数,我们可以方便地根据索引选择列表中的特定元素。这种方法简洁高效,可以大大提高代码的可读性和可维护性。

0