python中range和xrange的区别_python中range和xrange的区别
range()是Python的內(nèi)置函數(shù),用于創(chuàng)建整數(shù)的列表,可以生成遞增或者遞減的數(shù)列。xrange也有相同的功能, 今天來(lái)看下它們之間的不同。
range 函數(shù)說(shuō)明:range([start,] stop[, step]),根據(jù)start與stop指定的范圍以及step設(shè)定的步長(zhǎng),生成一個(gè)序列。
range示例:
xrange 函數(shù)說(shuō)明:用法與range完全相同,所不同的是生成的不是一個(gè)數(shù)組,而是一個(gè)生成器。
特別提醒: xrange函數(shù)在Python3中已經(jīng)取消,在python3中,range()這種實(shí)現(xiàn)被移除了,保留了xrange()的實(shí)現(xiàn),且將xrange()重新命名成range()。所以Python3不能使用xrange,只能使用range
xrange示例:
由上面的示例可以知道:要生成很大的數(shù)字序列的時(shí)候,用xrange會(huì)比range性能優(yōu)很多,因?yàn)椴恍枰A(yù)先開(kāi)辟一塊很大的內(nèi)存空間,這兩個(gè)基本上都是在循環(huán)的時(shí)候用:
這兩個(gè)輸出的結(jié)果都是一樣的,實(shí)際上有很多不同,range會(huì)直接生成一個(gè)list對(duì)象:
輸出結(jié)果:
而xrange則不會(huì)直接生成一個(gè)list,而是每次調(diào)用返回其中的一個(gè)值:
結(jié)果如下:
最后,再說(shuō)一次, Python3中已經(jīng)取消了xrange方法, 直接使用range即可!
與50位技術(shù)專家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的python中range和xrange的区别_python中range和xrange的区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 手机号归属地区编码_这些关于手机号码的冷
- 下一篇: python在人工智能应用锁_解读! P