1. 程式人生 > 其它 >Python內建函式之range()

Python內建函式之range()

定義

  • python2.x range() 函式可建立一個整數列表,一般用在 for 迴圈中。
  • Python3 range() 函式返回的是一個可迭代物件(型別是物件),而不是列表型別, 所以列印的時候不會列印列表。
  • Python3 list() 函式是物件迭代器,可以把range()返回的可迭代物件轉為一個列表,返回的變數型別為列表。

函式語法

range(stop)
range(start, stop[, step])

引數

引數 描述
start 計數從 start 開始。預設是從 0 開始。例如range(5)等價於range(0, 5)
stop 計數到 stop 結束,但不包括 stop
。例如:range(0, 5) 是[0, 1, 2, 3, 4]沒有5
step 步長,預設為1。例如:range(0, 5) 等價於 range(0, 5, 1)

Python2 的range()例項

range()的常見用法如下:

 1 # 從0 開始到10
 2 print(range(10))    # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
 3 # 從1開始到11
 4 print(range(1,11))    # [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
 5 # 步長為5
 6 print(range(0,30,5))    # [0, 5, 10, 15, 20, 25]
7 # 步長為3 8 print(range(0,30,5)) # [0, 3, 6, 9] 9 # 負數 10 print(range(0,-10,-1)) # [0, -1, -2, -3, -4, -5, -6, -7, -8, -9] 11 print(range(0)) # [] 12 print(range(1,0)) # []

當range用於for時,例子如下:

1 x = 'runoob'
2 for i in range(len(x)):
3     print(x[i])

輸出結果如下:

r
u
n
o
o
b

Python3 的range()例項

預設構造方法例項如下:

 1 print(range(5)) # 輸出range(0, 5)
 2 for i in range(5):
 3     print(i)
 4     """輸出結果為:
 5 0
 6 1
 7 2
 8 3
 9 4
10     """
11 print(list(range(5)))   # 輸出結果為 [0, 1, 2, 3, 4]
12 print(list(range(0)))   # 輸出結果為 []

使用第二種構造方法例項如下:

1 print(list(range(0, 30, 5)))    # 輸出[0, 5, 10, 15, 20, 25]
2 print(list(range(0, 10, 2)))    # 輸出 [0, 2, 4, 6, 8]
3 print(list(range(0, -10, -1)))  # 輸出[0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
4 print(list(range(1, 0)))        # 輸出[]

參考網址

有志者,事竟成,破釜沉舟,百二秦關終屬楚; 苦心人,天不負,臥薪嚐膽,三千越甲可吞吳。