range和xrange的區別

2022-05-13 09:20:51 字數 603 閱讀 2275

只有在python2中才有xrange和range,python3中沒有xrange,並且python3中的range其實是py2中的xrange。下面說說py2的range和xrange的區別

在py2中,range得到的是乙個列表

x = range(0, 5)

print(type(x)) #

結果是list

print(x) #

結果是[0,1,2,3,4]

xrange得到的是乙個生成器物件

x = xrange(0, 5)

print(type(x)) #

結果是乙個生成物件

print(x) #

結果是xrange(0,5)

再用py3

xrange的用法與range相同,不同的是xrange並不是生成列表,而是作為乙個生成器。即資料生成乙個取出乙個。

相對來說,xrange比range效能優化很多,因為他不需要一下子開闢一塊很大的記憶體,特別是資料量比較大的時候。

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,7,2 0,2,4,6 xrange 函式說明 用法與ra...

xrange和range的區別

內建函式range 返回乙個list xrange 返回乙個xrange物件,xrange物件是乙個generator,而且是乙個sequence python type range 10 list type xrange 10 xrange dir xrange class delattr doc...

xrange和range的區別?

range 函式說明,range start,stop step 根據start與stop指定的範圍以及step設定的步長,生成乙個列表。xrange 函式說明,xrange 用法與 range 完全相同,所不同的是生成的不是乙個list物件,而是乙個生成器。1 range和xrange都是在迴圈中...