关于列表推导式的问题
情况一:>>> y = [[],[],[],[],[]]>>> y = .append(i) for i in range(5)]
>>> y
情况二:>>> y = [[],[],[],[],[]]
>>> for i in range(5):
y.append(i)
>>> y
[, , , , ]
为什么以上两种结果不一样 因为 append 的返回值是 None,所以 y = .append(i) for i in range(5)] 得到的 y 所有元素都为 None
想要跟情况二得到一样的结果应该是这样:
>>> y = [[],[],[],[],[]]
>>> .append(i) for i in range(5)]
>>> y
[, , , , ]
>>> 本帖最后由 chinajz 于 2023-2-16 08:25 编辑
x= [[],[],[],[],[]]
y= .append(i) for i in range(5)]
print(x,":",y)
x= [[],[],[],[],[]]
for i in range(5):
y = x.append(i)
print(x,":",y)
运行结果两者一样:
[, , , , ] :
[, , , , ] :
isdkz 发表于 2023-2-15 23:01
因为 append 的返回值是 None,所以 y = 得到的 y 所有元素都为 None
...
厉害了~
页:
[1]