【发布时间】:2021-12-12 00:46:42
【问题描述】:
循环中的“-1”是什么意思
CAPACITY = 10
buffer = [-1 for i in range(CAPACITY)]
【问题讨论】:
-
不过,这不是一个循环。它被称为“列表理解”
循环中的“-1”是什么意思
CAPACITY = 10
buffer = [-1 for i in range(CAPACITY)]
【问题讨论】:
这是列表中将作为列表理解的一部分创建的元素。
>>> l = [-1 for _ in range(5)]
>>> l
[-1, -1, -1, -1, -1]
>>> l[1] = 2
>>> l
[-1, 2, -1, -1, -1]
这个具体的例子也可以写成[-1] * CAPACITY。
>>> l = [-1] * 5
>>> l
[-1, -1, -1, -1, -1]
>>> l[1] = 2
>>> l
[-1, 2, -1, -1, -1]
【讨论】:
这是一个列表推导式 - 展开后相当于:
buffer = []
for i in range(CAPACITY):
buffer.append(-1)
【讨论】:
这是一个列表理解。
您基本上是在使用 for 循环声明一个大小为 CAPACITY 的列表,该列表的所有元素都将具有 -1 的值。
如果你print(buffer),你会得到如下输出:
[-1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
【讨论】: