请解释以下内联 python 代码? index = [n for n, value in enumerate(self.Variable[i]) if value == 1]

Please explain the following inline python code? index = [n for n, value in enumerate(self.Variable[i]) if value == 1]

我需要理解以下代码。 代码来自 class 方法。 代码片段

index = [n for n, value in enumerate(self.Variable[i]) if value == 1]

以上代码可以改写为:

indices = []
for n, value in enumerate(self.BUSES[i]):
    if value==1:
        indices.append(n)

enumerate returns 给定列表的一对(索引,该索引处的值)。因此,您正在测试给定索引处的值是否为 1,如果为真,则将该索引添加到 indices.