使用嵌套列表理解来创建加速增长

Fat*_*aur 0 python

我想要一个由数字组成的列表,乘数随着每一步的增加而增加。基本的嵌套for循环很简单。

numbers = []
i = 1
for x in range(50):
    numbers.append(x*i)
    i += 1
Run Code Online (Sandbox Code Playgroud)

但是当我尝试使用列表理解来做这件事时,它并不像我想要的那样工作。

numbers = [x * i for x in range(50) for i in range(50)]
Run Code Online (Sandbox Code Playgroud)

我知道我在列表理解上做错了,但我不知道如何解决。

MyN*_*sFu 5

这应该与您的 for 循环的行为方式相同。

numbers = [x * (i+1) for x, i in zip(range(50), range(50))]
Run Code Online (Sandbox Code Playgroud)

或者

numbers = [x * i for x, i in zip(range(50), range(1, 51))]
Run Code Online (Sandbox Code Playgroud)

甚至没有我

numbers = [x * (x+1) for x in range(50)]
Run Code Online (Sandbox Code Playgroud)