小编jak*_*rah的帖子

无法将列表映射到python中的列表列表

基本上,我需要从值列表创建一个新的列表列表,该列表映射到另一个间隔列表.这些值中的一些实际上落在间隔中的两个子列表的范围内.例如,25落在[0,30]和[20,55]之间.然而,诸如91的整数值仅落在一个子列表[75,100]的范围内.我想创建一个新列表,其中每个值映射到间隔列表,但我希望这些值与间隔列表分开.

    intervals = [[0,30], [20,55], [45,80], [75,100]]
    values = [25, 51, 53, 83, 91]
Run Code Online (Sandbox Code Playgroud)

现在我的代码如下:

    maplist = [[]]
    for i in values:
        for j in intervals: 
            if(i >= j[0]) and (i <= j[1]):
                maplist.append(i)
    print(maplist)
Run Code Online (Sandbox Code Playgroud)

输出:[[],25,25,51,51,53,53,83,91]

因此,正如您所看到的,它输出25次,51次两次和53次两次,因为这些值落在各个子列表之间.83和91仅介于[75-100]之间

我希望输出为:

    [[25], [25,51,53], [51,53], [83,91]]
Run Code Online (Sandbox Code Playgroud)

这意味着每个值都将映射到列表的间隔列表.任何帮助将不胜感激.

python list nested-lists

3
推荐指数
1
解决办法
184
查看次数

标签 统计

list ×1

nested-lists ×1

python ×1