【发布时间】:2021-12-08 20:16:42
【问题描述】:
假设我有一个数组:
a = [0.42, 0.18, 1.54, 2.9, 1.81, 2.35, 0.18, 1.54, 2.92]
具有以下(逐元素)逻辑状态:
[False, True, False, False, False, False, True, False, False]
有没有一种很好的方法来使用列表推导来仅将 True 元素添加到新列表中? 附加问题: 之后会弹出来自 a 的真实元素(因为它们现在已经被处理)
【问题讨论】:
-
zip他们两个例如[v for v, state in zip(a, logical_state) if state]。如果它是一个 numpy 数组,你可以这样做a[logical_states]
标签: python list boolean list-comprehension cluster-analysis