我是靠谱客的博主 开放大叔,最近开发中收集的这篇文章主要介绍【Python小技巧】python从数字列表中提取出指定长度的连续数字片段问题描述:解决措施:效果展示:,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

问题描述:

在处理一堆数据列表问题是遇到了一个小难题,就是如何从一串不固定长度的数字元素列表中提取出指定连续长度的元素片段呢?

例如:

'''我们想对下面这个列表:
    1、将连续的数字片段提取出来
    2、指定连续的片段长度,例如我想把满足3个元素连续或者4个元素连续的片段提取出来'''
num_list = [1, 2, 4, 5, 6, 7, 14, 15, 17, 18, 19, 31, 32, 33, 34, 46, 48, 78, 90, 112, 113, 114, 160, 432]

解决措施:

def continusFind(num_list):
    num_list.sort()
    s = 1
    find_list = []
    have_list = []
    while s <= len(num_list) - 1:
        if num_list[s] - num_list[s - 1] == 1:
            flag = s - 1
            while num_list[s] - num_list[s - 1] == 1:
                s += 1
                #判断是否为连续的3连号或者4连号或者5连号的连续片段
                if len(num_list[flag:s])==3 or len(num_list[flag:s])==4 or len(num_list[flag:s])==5:
                    find_list.append(num_list[flag:s])
                    have_list += num_list[flag:s]
        else:
            s += 1
    return find_list

num_list = [1, 2, 4, 5, 6, 7, 14, 15, 17, 18, 19, 31, 32, 33, 34, 46, 48, 78, 90, 112, 113, 114, 160, 432]

print(continusFind(num_list))

效果展示:

在这里插入图片描述

成功将指定长度的连续片段取出!

最后

以上就是开放大叔为你收集整理的【Python小技巧】python从数字列表中提取出指定长度的连续数字片段问题描述:解决措施:效果展示:的全部内容,希望文章能够帮你解决【Python小技巧】python从数字列表中提取出指定长度的连续数字片段问题描述:解决措施:效果展示:所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(75)

评论列表共有 0 条评论

立即
投稿
返回
顶部