python - 如何使用 Python 中的索引从列表中提取元素?

标签 python list

如果你在 python 中有一个列表,并且想将索引 1、2 和 5 处的元素提取到一个新列表中,你会怎么做?

这就是我的做法,但我不是很满意:

>>> a
[10, 11, 12, 13, 14, 15]
>>> [x[1] for x in enumerate(a) if x[0] in [1,2,5]]
[11, 12, 15]

有没有更好的办法?

更一般地说,给定一个索引元组,你将如何使用这个元组从列表中提取相应的元素,即使有重复(例如元组 (1,1,2,1,5) 产生 [11,11,12,11,15])。

最佳答案

也许用这个:

[a[i] for i in (1,2,5)]
# [11, 12, 15]

关于python - 如何使用 Python 中的索引从列表中提取元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2621674/

相关文章:

python - 在 Python 中查找多个列表中最相似的数字

python - 在 python 字典列表中查找重复项

python - 如何在 python 列表中立即释放使用的内存?

python - astype 是否编辑原始数据框?

python - 尝试在 Python 中运行 RPY2 并收到错误 0X7e

python 遍历列表

namedtuple 中 namedtuple 的 Python 语法

python - 命名数据类型数组 : Difference between a[0] ['name' ] and a ['name' ][0]?

python - 在保留列表结构的同时删除列中的列表类型

javascript - 通过ajax在codeigniter中将数据库数据显示为列表