python中的range()函式的功能hen強大,所以我覺得很有必要和大家分享一下
就好像其API中所描述的:
If you do need to iterate over a sequence of numbers, the built-in function range() comes in handy. It generates arithmetic progressions
程式碼示例:
#如果你需要遍歷一個數字序列,可以是使用python中內建的函式range() #如下面要遍歷一個列表test_list test_list = [1,3,4,'Hongten',3,6,23,'hello',2] for i in range(len(test_list)): print(test_list[i],end=',') print() print('#####################################') #或者用range()函式生成一個列表 for i in range(5): print(i,end=',') print() print('#####################################') #python中的內建函式range(10),其中引數'10'代表:從0到10的一個序列 #即長度為10的一個序列 print('range(10)表示:',range(10)) listA = [i for i in range(10)] print(listA) print('#####################################') #當然,我們可以自定義我們需要的起始點和結束點 #我們定義了一個從5開始的起始點,到100結束的結束點 print('range(5,100)表示:',range(5,100)) listB = [i for i in range(5,100)] print(listB) print('#####################################') #定義了這些後,我們還可以定義步長 #下面我們定義一個從1開始到30結束,步長為3的列表 print('range(1,30,3)表示:',range(1,30,3)) listC = [i for i in range(1,30,3)] print(listC)
執行效果:
Python 3.3.2 (v3.3.2:d047928ae3f6, May 16 2013, 00:03:43) [MSC v.1600 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> ================================ RESTART ================================
>>>
1,3,4,Hongten,3,6,23,hello,2,
#####################################
0,1,2,3,4,
#####################################
range(10)表示: range(0, 10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
#####################################
range(5,100)表示: range(5, 100)
[5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99]
#####################################
range(1,30,3)表示: range(1, 30, 3)
[1, 4, 7, 10, 13, 16, 19, 22, 25, 28]
>>>