python3取消了xrange

  • Python升级到3没有了xrange,相应的功能可以用range替代

  • 在python2中xrange是list类型,占用空间较大

    • 1
      2
      3
      4
      Python 2.7.13 (v2.7.13:a06454b1afa1, Jan 17 2019, 20:53:40) [MSC v.1500 64 bit (AMD64)] on win32
      Type "help", "copyright", "credits" or "license" for more information.
      >>> type(range(10))
      <type 'list'>
  • python3中返回的是一个对象,没有将数据完全实例化,所以内存中只有一个对象的空间,对性能的提升有一定帮助

    • 1
      2
      3
      4
      > print(sys.version)
      3.5.3 (v3.5.3:1880cb95a742, Jan 16 2017, 16:02:32) [MSC v.1900 64 bit (AMD64)]
      > type(range(10))
      <class ''>
  • python中的字典item也是类似的改动