首頁 >後端開發 >Python教學 >python裡range什麼意思

python裡range什麼意思

步履不停
步履不停原創
2019-07-02 14:34:14106041瀏覽

在python中,range的意思是“範圍”、“一系列”,是一個內建函數,用於產生一系列連續的整數,創建一個整數列表,語法為“range(start,stop [,step])」;其整數列表的範圍從start值到stop值,但不包括stop。

python裡range什麼意思

本教學操作環境:windows7系統、Python3版、Dell G3電腦。

python裡range什麼意思

range的意思為「範圍」、「一系列」。

python range()

#range是python中的內建函數,用於產生一系列連續的整數,建立整數列表,一般用在for 迴圈。

range()函數語法

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)

實例

>>>range(10)        # 从 0 开始到 10
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(1, 11)     # 从 1 开始到 11
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> range(0, 30, 5)  # 步长为 5
[0, 5, 10, 15, 20, 25]
>>> range(0, 10, 3)  # 步长为 3
[0, 3, 6, 9]
>>> range(0, -10, -1) # 负数
[0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
>>> range(0)
[]
>>> range(1, 0)
[]

以下是range 在for 中的使用,循環出runoob 的每個字母:

>>>x = 'runoob'
>>> for i in range(len(x)) :
...     print(x[i])
... 
r
u
n
o
o
b
>>>

分析

(1)range()是可迭代對象,但不是迭代器。

如下圖所示:

python裡range什麼意思

補充:

可迭代物件(Iterable):

#凡是可以作用在for迴圈的對像都是可迭代對象,可用collections模組的Iterable來判斷。

迭代器(Iterator):

不僅可以作用於for循環,還能作用於next()函數的物件是迭代器,表示一個惰性計算的序列,可用collections模組的Iterator來判斷。

如果可迭代物件想變成迭代器,可以使用iter()函數:

iter(range(3))

python裡range什麼意思

#在for迴圈時,可迭代物件與迭代器的性能是一樣的,即它們都是惰性求值的,在空間複雜度與時間複雜度上並無差異。可迭代物件與迭代器兩者的差異是「一同兩不同」:相同的是都可惰性迭代(__Iter__方法),不同的是可迭代物件不支援自遍歷(即__next__方法),而迭代器本身不支援切片(即__getitem__方法)。

(2)range()是不可變的序列類型,可以進行判斷元素、尋找元素、切片等操作,但不能修改元素。

python裡range什麼意思

總之:range() 是可迭代物件而不是迭代器,range 物件是不可變的等差序列。

相關教學推薦:Python影片教學

#

以上是python裡range什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

相關文章

看更多