我正在研究列表理解
[0 if N<2 else val*2 for val in range(0,N//2)]
当 N<2 我期望输出为 [0] 但我得到 []
请您参考如下方法:
如果 N = 1,则 N//2 = 0。所以你的 for 循环没有执行,因为它的范围是 0 到 0。你可以执行 [val * 2 for val in range(0, N//2)] if N >= 2 else [0 ]
我正在研究列表理解
[0 if N<2 else val*2 for val in range(0,N//2)]
当 N<2 我期望输出为 [0] 但我得到 []
请您参考如下方法:
如果 N = 1,则 N//2 = 0。所以你的 for 循环没有执行,因为它的范围是 0 到 0。你可以执行 [val * 2 for val in range(0, N//2)] if N >= 2 else [0 ]