我有一个遵循特定模式的整数列表,它很复杂,但例如说:
x = [0,2,4,6,8]
我希望用自己的9个副本扩展列表,但添加一个每次线性缩放的常量值。例如。如果
constant = 10
loop = 9
然后第二次延期将导致:
x_new = [0,2,4,6,8,10,12,14,16,18]
所以我想我想要一个遍历x
的循环并将数组扩展x[i]+constant
,loop
次?
for i in range(loop):
for j in range(len(x)):
x_new = x.extend((x[j]+constant)*i)
或许这可以通过列表理解轻松完成?我的实际列表是~3000长,我将使用不同的loop
和constant
值进行几次。
答案 0 :(得分:4)
是的,列表理解应该有效:
x_new = [ e + constant * i for i in range(loop+1) for e in x ]
答案 1 :(得分:0)
我刚刚就上述问题做了一些工作,这段代码可以用于上述问题。
x=[0,2,4,6,8]
y=x[4]
i=0
j=0
while(i<9):
z=range(y+2,y+12,2)
x.extend(z)
print x
y=y+10
i=i+1