jlzzjlzz亚洲乱熟在线播放

系統城裝機大師 - 唯一官網:www.farandoo.com!

當前位置:首頁 > 腳本中心 > python > 詳細頁面

Python3如何使用range函數替代xrange函數

時間:2020-10-06來源:www.farandoo.com作者:電腦系統城

在 Python 2 中 xrange() 創建迭代對象的用法是非常流行的。比如: for 循環或者是列表/集合/字典推導式。這個表現十分像生成器(比如。"惰性求值")。但是這個 xrange-iterable 是無窮的,意味著你可以無限遍歷。由于它的惰性求值,如果你不得僅僅不遍歷它一次,xrange() 函數 比 range() 更快(比如 for 循環)。盡管如此,對比迭代一次,不建議你重復迭代多次,因為生成器每次都從頭開始。

在 Python 3 中,range() 是像 xrange() 那樣實現以至于一個專門的 xrange() 函數都不再存在(在 Python 3 中 xrange() 會拋出命名異常)。

解決方法

上面講的原因比較官方,可能很多人不是理解,通俗點講就是:

因為 python3 中取消了 range 函數,而把 xrange 函數重命名為 range,所以現在直接用 range 函數即可。

因此,在python3版本中,我們只需要直接用range 函數就可以了!而且從某種意義上來說,xrange() 函數用法與 range() 完全相同。如下:

range

函數說明:range([start,] stop[, step]),根據start與stop指定的范圍以及step設定的步長,生成一個列表。

>>> range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(2,10)
[2, 3, 4, 5, 6, 7, 8, 9]
>>> range(2,10,2)
[2, 4, 6, 8]
>>> type(_)
< type 'list'>

xrange

函數說明:和range 的用法完全相同,但是返回的是一個生成器。

>>> xrange(10)
xrange(10)
>>> xrange(2,10)
xrange(2, 10)
>>> xrange(2,10,2)
xrange(2, 10, 2)
>>> type(_)
< type 'xrange'>
>>> list(xrange(2, 10, 2))
[2, 4, 6, 8]

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

分享到:

相關信息

系統教程欄目

欄目熱門教程

人氣教程排行

站長推薦

熱門系統下載