求单个元素的子阵指数

2024-09-27 07:34:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个图的邻接列表数组。我想找到阶数为1的顶点。例如,如果a=[[0,1,2],[1],[2],[1,2]],那么我需要索引12,因为a[1]a[2]有单个元素。你知道吗


Tags: 元素列表数组顶点阶数
2条回答

我推荐enumerate()函数:

a = [[0,1,2],[1],[2],[1,2]]
indices = [i for i, e in enumerate(a) if len(e) == 1] 
print(indices)

如果您正在查找只有一个元素的sublists,请尝试以下操作

[i for i in a if len(i) == 1]

输出:

[1, [2]]

它被称为list comprehension,如果原始列表中的子列表只包含一个元素,我们将在其中创建新列表

编辑:由于上述方法会创建子列表的新列表,因此需要将列表展平

list(b for i in a if len(i) == 1 for b in i)

[1, 2]

相关问题 更多 >

    热门问题