给定大量波动值,如何确定所有局部最小值?不使用numpy。局部最小值是指列表中作为函数波谷的所有值。
List_y = [23, 8, -7, 57, 87, 6]
Run Code Online (Sandbox Code Playgroud)
我想:
New_list = [-7, 6]
Run Code Online (Sandbox Code Playgroud)
def local_min(ys):
return [y for i, y in enumerate(ys)
if ((i == 0) or (ys[i - 1] >= y))
and ((i == len(ys) - 1) or (y < ys[i+1]))]
>>> local_min([23, 8, -7, 57, 87, 6])
[-7, 6]
>>> local_min([23, 6, 6, 6, 42])
[6]
>>> local_min([6, 6, 4])
[4]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3809 次 |
| 最近记录: |