python找出列表中大于某个阈值的数据段示例

yipeiwu_com7年前Python基础

该算法实现对列表中大于某个阈值(比如level=5)的连续数据段的提取,具体效果如下:

找出list里面大于5的连续数据段:

list = [1,2,3,4,2,3,4,5,6,7,4,6,7,8,5,6,7,3,2,4,4,4,5,3,6,7,8,9,8,6,1]

输出:

[[6, 7], [6, 7, 8], [6, 7], [6, 7, 8, 9, 8, 6]]

算法实现:

# -*- coding: utf-8 -*-
 
"""
--------------------------------------------------------
# @Version : python3.6
# @Author : wtg
# @File  : data_search.py
# @Software: PyCharm
# @Time  : 2018/12/17 14:44
--------------------------------------------------------
# @Description: 
--------------------------------------------------------
"""
 
def data_search(data, level):
  list = []
  temp = []
  for i in range(len(data)):
    if data[i] > level:
      temp.append(data[i])
    else:
      list.append(temp)
      temp = []
  return [i for i in list if i]
 
if __name__ == '__main__':
  list = [1,2,3,4,2,3,4,5,6,7,4,6,7,8,5,6,7,3,2,4,4,4,5,3,6,7,8,9,8,6,1]
  ret = data_search(list, 5)
  print("input: ",list)
  print("output: ",ret)

效果如下:

以上这篇python找出列表中大于某个阈值的数据段示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

详解MySQL数据类型int(M)中M的含义

介绍 MySQL 数据类型中的 integer types 有点奇怪。你可能会见到诸如:int(3)、int(4)、int(8) 之类的 int 数据类型。刚接触 MySQL 的时候,我...

Python数据存储之 h5py详解

1、Python数据存储(压缩) (1)numpy.save , numpy.savez , scipy.io.savemat numpy和scipy内建的数据存储方式。 (2)cPic...

用Anaconda安装本地python包的方法及路径问题(图文)

用Anaconda安装本地python包的方法及路径问题(图文)

Anaconda确实带来了很多方便,但是之前也过多的依赖了conda自带的一键下载python包的功能。这不,这几天突然要用FastFM这个包,无奈conda里没有,于是只能从githu...

用Python编写web API的教程

自从Roy Fielding博士在2000年他的博士论文中提出REST(Representational State Transfer)风格的软件架构模式后,REST就基本上迅速取代了复...

python使用筛选法计算小于给定数字的所有素数

本文实例为大家分享了python计算小于给定数字的所有素数的具体代码,供大家参考,具体内容如下 代码思路:首先列出指定范围内所有候选数字,然后从前往后依次选择一个数字去除以后面所有数字,...