首页 > 解决方案 > python中列表和数字之间的特定最大值

问题描述

我想在列表 L 的元素和数字“num”之间做最大值而不做for循环。如果列表的元素大于或等于我们保留的数字,否则我们输入 0。

L=[12,34,65,98,67,56,76,67,98,52,67,100]
num=50
t=[]
for j in range(len(L)):
   if(L[i]> num):
      t.append(L[i])

我想在不循环的情况下获得相同的结果。我该怎么做?

标签: pythonlist

解决方案


在 numpy 中,您可以使用布尔索引。返回数组中条件为 True 的项。假设问题中的 L 和 num 。

import numpy as np
npl = np.array(L)

npl[ npl > num ]
# array([ 65,  98,  67,  56,  76,  67,  98,  52,  67, 100])

推荐阅读