zoukankan      html  css  js  c++  java
  • range和arange的区别

      首先得说明一下,只有在python2中才有xrange和range,python3中没有xrange,并且python3中的range和python2中的range有本质的区别。所以这儿说的range和xrange的区别是只针对python2的。

    • 不同点
    •  range

        在py2中,range得到的是一个列表,即

        x = range(0, 5)
        print(type(x)) # 打印x的类型,结果是list
        print(x) # 结果是[0,1,2,3,4]

    •  xrange

        xrange得到的是一个生成器对象, 即

        x = xrange(0, 5)
        print(type(x)) # 输出类型,结果为一个生成对象
        print(x) # 输出x, 结果为xrange(0,5)
      那么,python3中为什么没有了range了呢(额,这个怎么描述呢,是有range,但是这个range其实是py2中的xrange,而不是range),因为使用生成器可以节约内存。比如现在有个代码是for i in range(0, 10000),如果还是使用py2中的range的话,那你就会得到一个0到9999的一个列表,这个将会占用你很大的空间,但是使用生成器的话,就会节省很大的资源。

    • 共同点

      它们的使用都是一样的,比如都可以用for循环遍历所有的值

  • 相关阅读:
    docker 常用命令
    linux 查看服务器序列号
    centos 7 lsof 安装使用
    Jenkins +svn +maven +tomcat+ ansible 自动化批量部署
    nginx 部署前期一定要关闭selinux
    yum 执行不了, 解决方法
    IIS发布网站
    使用TreeView 使用多选功能
    C#类和接口
    关于C#垃圾回收
  • 原文地址:https://www.cnblogs.com/pyexile/p/10958384.html
Copyright © 2011-2022 走看看