為什麼 Python3 中沒有 xrange 函數?

| | | | | | |

最近我開始使用 Python3,它缺少 xrange 很痛苦。

簡單示例:

  1. Python2:

    from time import time as t def count(): st = t() [x for x in xrange(10000000) if x%4 == 0] et = t() print et- st count() 
  2. Python3:

    from time import time as t def xrange(x): return iter(range (x)) def count(): st = t() [x for x in xrange(10000000) if x%4 == 0] et = t() print (et-st) count() 

結果分別為:

  1. 1.53888392448
  2. 3.215819835662842

為什麼會這樣?我的意思是,為什麼 xrange 已被刪除?這是一個非常好的學習工具。對於初學者,就像我自己一樣,就像我們都在某個時候一樣。為什麼要刪除它?誰能給我指出正確的 PEP,我找不到它。