Python的range和xrange的區別

2022-04-29 04:21:11 字數 882 閱讀 8014

for i in range(1, 5):

print(i)

# i 返回1,2,3,4

for i in xrange(1, 5):

#返回同上

python 2.x中:

xrange用法與range完全相同,所不同的是range生成的是乙個list,記憶體將會分布相應的長度的空間給list。而xrange生成的是乙個生成器。要生成很大的數字序列的時候,用xrange會比range效能優很多,因為不需要一開始就開闢一塊很大的記憶體空間

python 3.x中:

取消了xrange, python3中返回的是乙個range物件(class),並沒有將資料完全例項化,所以記憶體中只有乙個物件的空間。

range用法詳細說明:

>>>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)

python中range 和 xrange的區別

range 函式說明 range start,stop step 根據start與stop指定的範圍以及step設定的步長,生成乙個序列。range示例 range 5 0,1,2,3,4 range 1,5 1,2,3,4 range 0,6,2 0,2,4 xrange 函式說明 用法與rang...

python中xrange和range的異同

range 函式說明 range start,stop step 根據start與stop指定的範圍以及step設定的步長,生成乙個序列。range示例 1.range 5 2.0,1,2,3,4 3.range 1,5 4.1,2,3,4 5.range 0,6,2 6.0,2,4 xrange ...

python中xrange和range的異同

range 函式說明 range start,stop step 根據start與stop指定的範圍以及step設定的步長,生成乙個序列。range示例 range 5 0,1,2,3,4 range 1 5 1,2,3,4 range 0 6,2 0,2,4 xrange 函式說明 用法與rang...