利用for循環 range(1,101)和range(0,101)輸出結果不同
我想嘗試用for循環:
L = range(1, 101)
for x in L:
??? if x%3 == 0:
??????? print L[x]
輸出為: 4,7,11,13,16,19
如果把 range(1,101)改成range(0,101)就可以得出正確結果。 但是把range的初始值改成2,3,4 結果就又不一樣了,請問是為什么呢?
我想嘗試用for循環:
L = range(1, 101)
for x in L:
??? if x%3 == 0:
??????? print L[x]
輸出為: 4,7,11,13,16,19
如果把 range(1,101)改成range(0,101)就可以得出正確結果。 但是把range的初始值改成2,3,4 結果就又不一樣了,請問是為什么呢?
2020-03-06
舉報
2020-03-22
range(1,101)是1-100
range(0,101)是0-100
2020-03-19
range(1,101)是生成從1-100的序列,即L[0]的值為1,所以當你遍歷到x==3這個數時,實際上是應該輸出L[2];
你只要把最后print L[x]改為L[x-1]就好了。
2020-03-06
range()函數第一個參數是起始點,第二個參數是結束點,生成的序列包含第一個參數,不包含第二個參數。range(1,101)是1-100,而range(0,101)是0-100。