首頁 > 後端開發 > Python教學 > python相對於range應該比較傾向實用xrange嗎

python相對於range應該比較傾向實用xrange嗎

silencement
發布: 2019-05-25 16:22:13
原創
2861 人瀏覽過

python相對於range應該比較傾向實用xrange嗎

range與xrange的比較

range

函數用法: 
range( stop) 
range(start,stop[,step]) 
函數說明: 
這是一個建立包含數列的清單的通用函數。它最常用於for循環。參數必須為普通的整數。如果step參數省略,則預設為1。如果start參數省略,則預設為0。函數的完整形式傳回一個整數列表[start, start step, start 2 * step, …]。如果step為正,則最後一個元素start i * step最大且小於stop;如果step為負,則最後一個元素start i * step最小且大於stop。 step必須不能為零(否則會引發ValueError)。

範例

python相對於range應該比較傾向實用xrange嗎

xrange

#函數用法: 
xrange(stop) 
# #xrange(start,stop[,step]) 
函數說明: 
此函數與range()十分相似,但傳回的是xrange物件類型而非清單。這是一個惰性的序列類型,它產生與對應的列表相同的值,但不會真正同時一起儲存它們。 xrange()相比range()的優勢不大(因為xrange()仍然必須創建需要的值),除非在內存緊張的機器上使用一個非常大的range或這range的所有元素從不使用(例如當迴圈經常被break終止)。 
xrange物件類型說明 
xrange型別是不可變的序列,通常用於循環。 xrange類型的好處是xrange物件始終佔用相同數量的內存,無論它表示的範圍的大小。但它沒有始終一致的性能優勢。 
xRange物件的行為很少:它們只支援索引、迭代和len()函數。

範例

python相對於range應該比較傾向實用xrange嗎

由上面的範例可以看出:range()與xrange()方法完全相同,基本上都是在迴圈的時候用,而且兩者輸出的結果都一樣,兩者最大的不同點在於range()會直接產生一個list對象;xrange()生成的則是xrange對象而不是list對象,每次調用返回其中的值。

以上是python相對於range應該比較傾向實用xrange嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板