2015-11-27 93 views
1

是否有可能增加範圍中的每一步?類似這樣的:Python範圍步驟增加

for num in range(1, 40, i++) : 
     print(i) 
... 
1 
2 
3 
4 
... 

或步入範圍只有固定的大小?

+0

否,例如具有增加的尺寸的步驟:範圍(1,40,1) - >範圍(1,40,2) - >等 – goodgrief

+0

'while'循環會使事情更簡單 – Don

回答

1

是的,步進範圍有固定的大小。

像這樣的東西給你想要的輸出。

>>> j=0 
>>> for i in xrange(1,40): 
    j+=i 
    print j 
1

我想你想每次迭代增加步長?

下面的代碼這是否

>>> for i in (i+sum(range(i)) for i in (range (1,10))): 
... print i 
... 
1 
3 
6 
10 
15 
21 
28 
36 
45 
>>> 
1

while循環將導致更乾淨的代碼:

step = 1 
i = 1 
while i < 40: 
    print i, step 
    i += step 
    step +=1 

結果:

1 1 
2 2 
4 3 
7 4 
11 5 
16 6 
22 7 
29 8 
37 9