【问题标题】:python: find the indeces of nested list by conditionpython:按条件查找嵌套列表的索引
【发布时间】:2017-04-06 09:04:13
【问题描述】:

要获得满足条件的列表索引,比如None,我可以这样做:

[x for (x, e) in enumerate(my_list) if e is None]

但是我无法理解如何使用与上述相同的方案来处理嵌套列表。例如如何找到my_nlist 的索引,其中嵌套(内部)列表中的第一个元素是None

my_nlist = [[None, 2], [13, 2], [None, 1]]

预期的结果是: [0,2]

【问题讨论】:

    标签: python list python-3.x nested indexof


    【解决方案1】:

    与上一个相同,只是使用一个元组作为项目一次性变量:

    In [5]: [ind for ind, (i, j) in enumerate(my_nlist) if i is None]
    Out[5]: [0, 2]
    

    【讨论】:

    • 哇——这么理解吧:(i, j) 元组对应于e(在平面列表的情况下)?
    【解决方案2】:

    使用numpy 的方法(可能比基本python 更清晰,但需要一个库):

    import numpy as np
    
    np.where([None in i for i in L])
    
    #(array([0, 2], dtype=int64),)
    

    【讨论】:

      猜你喜欢
      • 2016-02-29
      • 2019-01-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多