1. 程式人生 > >python中range、xrange、arange的區別

python中range、xrange、arange的區別

1、range()

range多用作迴圈,格式:range(start,end,step),返回的是一個range物件。例如:

for i in range(10,20,2):
    print(i)

輸出:

10
12
14
16
18

如想返回一個list,前面加上list轉換,例如:

x = list(range(1, 4, 1))
print(x)

輸出:

[1, 2, 3]

【注:range()為python中的內建函式,而arange(),是numpy模組中的函式】

2、xrange()

xrange()也是用作迴圈,只是xrang(0,10)不返回list,返回xrange物件。每次呼叫返回其中的一個值。
返回很大的數的時候或者頻繁的需要break時候,xrange效能更好。
【注意:python3.x中把xrange()取消了】

3、np.arange()

arange是numpy模組中的函式,使用前需要先匯入此模組。
arange(3):返回array型別物件。
【注:range()中的步長不能為小數,但是np.arange()中的步長可以為小數】
例如:

import numpy as np
for i in np.arange(1,2,0.1):
    print(i)

輸出:

1.0
1.1
1.2000000000000002
1.3000000000000003
1.4000000000000004
1.5000000000000004
1.6000000000000005
1.7000000000000006
1.8000000000000007
1.9000000000000008