range([start], [end], [long])
描述:
根據(jù)range里的參數(shù)生成指定范圍指定步長的一個(gè)序列
參數(shù):
[start]——指定范圍的左邊界,可取到
[end]——指定范圍的右邊界,不可取到
[long]——步長,若無步長,默認(rèn)為1
返回值:
列表
實(shí)例:
>>
>
range
(
0
,
6
,
2
)
[
0
,
2
,
4
]
>>
>
range
(
5
)
[
0
,
1
,
2
,
3
,
4
]
xrange()
描述:
用法與range完全相同,生成的不是數(shù)組,而是一個(gè)生成器
實(shí)例:
>>
>
xrange
(
0
,
6
,
2
)
xrange
(
0
,
6
,
2
)
>>
>
xrange
(
5
)
xrange
(
5
)
區(qū)別:
1、要生成很大的數(shù)字序列的時(shí)候,用xrange會比range性能優(yōu)很多,不需要一上來就占用一塊很大的內(nèi)存空間;
2、range會直接生成一個(gè)list對象;xrange則不會直接生成一個(gè)list,而是每次調(diào)用返回其中的一個(gè)值
range()的風(fēng)險(xiǎn)
在python2中,range產(chǎn)生的是一個(gè)列表,如果range產(chǎn)生的列表需要一個(gè)很大的空間,系統(tǒng)會直接出現(xiàn)異常MemoryError;若未拋出異常,如此時(shí)range一直未被使用,就會一直占用系統(tǒng)內(nèi)存,導(dǎo)致內(nèi)存浪費(fèi)。
在python3中,range不會立馬占用內(nèi)存空間,而是什么時(shí)候使用,什么時(shí)候才會生成列表。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
