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

yipeiwu_com6年前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设计】。

相关文章

Python的collections模块中的OrderedDict有序字典

如同这个数据结构的名称所说的那样,它记录了每个键值对添加的顺序。 d = OrderedDict() d['a'] = 1 d['b'] = 10 d['c'] = 8 for le...

python 基于TCP协议的套接字编程详解

基于TCP协议的套接字编程 实现电话沟通为例,这里传递的是字符,可以自己尝试去发送一个文件 # 服务端 import socket # 1. 符合TCP协议的手机 server =...

python+influxdb+shell编写区域网络状况表

python+influxdb+shell编写区域网络状况表

本文为大家分享了python+influxdb+shell写一个区域网络状况表,供大家参考,具体内容如下 shell脚本部分: ex:就是ping 各个目的ip10个包,然后获取丢包率...

Sanic框架流式传输操作示例

本文实例讲述了Sanic框架流式传输操作。分享给大家供大家参考,具体如下: 简介 Sanic是一个类似Flask的Python 3.5+ Web服务器,它的写入速度非常快。除了Flask...

解决python3中自定义wsgi函数,make_server函数报错的问题

#coding:utf-8 from wsgiref.simple_server import make_server def RunServer(environ, start_...