python - 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])
我想在不循环的情况下获得相同的结果。我该怎么做?
解决方案
在 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])
推荐阅读
- javascript - Jquery动画位置函数调用?
- python-3.x - Python对象序列化
- android - 在 Android Studio 中使用数据绑定时如何解决“找不到属性的设置器”
- node.js - socket.on 没有监听事件
- android - 如何修复:错误:无法解决:'androidx.cardview:cardview:1.0.0'
- r - 具有生成器功能的多输入模型 - Keras R
- python-3.x - 使用 Networkx 在 Python 中查找 1-hop、2-hop、...、k-hop 邻居
- angular - 如何存储和使用角管道结果在html文件中添加ngClass
- java - 使用 java htmlunit 搜索具有动态 ID 的元素
- ios - 设置自定义 UITableViewHeaderFooterView 以实现可重用性