美文网首页
把相邻的连续整数合并成一个区间

把相邻的连续整数合并成一个区间

作者: 京古 | 来源:发表于2021-07-08 16:38 被阅读0次

    用python把相邻的连续整数合并成一个区间

    import sys
    
    ints = [2,3,4,5,6,   8,9,10,11,   14,15,16,17,18,   20,    34,35,  41,42,43,44,45,   55,56,  71,  85]
    
    dd = {}
    a = [min(ints)]
    tt = []
    for i in range(len(ints)-1):
        if ints[i+1] == ints[i] + 1 :
            a.append(ints[i+1])
        else:
            a = [ints[i+1]]
        tt.append(a)
    for x in tt:
        if not x[0] in dd:
            dd[x[0]] = x
        else:dd[x[0]] = list(set(dd[x[0]] + x))
    print(dd)
    

    结果:

    {2: [2, 3, 4, 5, 6], 8: [8, 9, 10, 11], 14: [14, 15, 16, 17, 18], 20: [20], 34: [34, 35], 41: [41, 42, 43, 44, 45], 55: [56, 55], 71: [71], 85: [85]}
    

    相关文章

      网友评论

          本文标题:把相邻的连续整数合并成一个区间

          本文链接:https://www.haomeiwen.com/subject/snjtpltx.html