You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何基于已有数组生成新数组:排除第三列值为0的行

数组处理需求实现方案

以下提供两种常用场景的实现方法:

1. Python 原生列表实现

无需依赖第三方库,直接用列表推导式完成:

# 定义原数组
a = [[10,12,0],[11,54,1],[17,34,1],[65,98,0]]
# 生成目标数组
b = [row[:2] for row in a if row[2] != 0]

运行后得到的b即为预期结果:[[11, 54], [17, 34]]

2. NumPy 实现(适合大规模数值运算场景)

如果你使用NumPy处理数组,可以用布尔索引更高效完成:

import numpy as np
# 定义原数组为numpy数组格式
a = np.array([[10,12,0],[11,54,1],[17,34,1],[65,98,0]])
# 筛选符合条件的行并取前两列,加tolist()可转回原生Python列表
b = a[a[:, 2] != 0, :2].tolist()

内容的提问来源于stack exchange,提问作者gemini

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 23:06:03