python - 在 Python 中切掉列表中每个(列表)元素中的第一个元素

标签 python list numpy slice

假设我们有一个列表:

a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

然后我想通过切掉列表中每个元素的第一个元素来创建一个新列表:

b = a[][1:]

显然以上是行不通的,但我现在想要的是:

[[2, 3], [5, 6], [8, 9]]

当然我可以循环遍历它,但我想知道的是是否有可能以我在上面错误地尝试过的任何类似方式来完成它。另外,最好有更好/好的方法来使用 numpy,在这种情况下,不需要像我尝试的那样通过切片来完成?

最佳答案

您可以使用 list comprehensions :

b = [x[1:] for x in a]

演示:

>>> a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
>>> b = [x[1:] for x in a]
>>> b
[[2, 3], [5, 6], [8, 9]]
>>>

关于python - 在 Python 中切掉列表中每个(列表)元素中的第一个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19486405/

相关文章:

python - Numpy 将编号从列切换到行

python - 如何使用 pcolormesh 在二维网格中绘制特定正方形的轮廓?

python - Pandas 数据框的形状到 3d 数组

python - 使用Python自动登录LinkedIn

python - 如何获取缺少属性的对象

python - 如何使用我自己的自定义表单覆盖 django-rest-auth 中的表单?

python - 保存我多次使用的列表的长度是否更好?

java - 创建单个列表的列表以在 HashMap 中使用

python - `vars` 和 `setattr` 和有什么区别?

java - 3 个集合的笛卡尔积