博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
range()和xrange()的区别
阅读量:7093 次
发布时间:2019-06-28

本文共 750 字,大约阅读时间需要 2 分钟。

今天写一下关于xrange()和range()的区别。

首先我们看一段代码:

class Ce_shi():

  def __init__(self,start,end):

    self.start = start

    self.end = end

  def __len__(self):

    return self.end - self.start

  def __getitem__(self,index):

    if index < 0 and index > -(self.end):

      return self.end + index

    elif index >= self.end or index < -(self.end):

      return IndexError

    elif index > 0:

      return self.start + index

这个类实现输出start--end之间的整数,也可以通过输入负索引来获取数字。

通过上面的例子就可以很好的理解range()和xrange()之间的区别了。

range()是一个序列,元素需要空间存储。

xrange()也是序列,但是它的元素不需要空间进行存储,它的实现与上面的Ce_shi类的实现方法类似。

如果进行只读,xrange()要比range()要好,如果需要对列表元素进行操作(增、删),range()更为适合。

 

 

本文参考:https://www.cnblogs.com/shixisheng/p/7089930.html

谢谢大家的阅读。

 

转载于:https://www.cnblogs.com/sniper-huohuohuo/p/8821211.html

你可能感兴趣的文章
HTTP协议:签名和证书
查看>>
C#递归生成菜单树
查看>>
请执行命令取出linux中eth0的IP地址
查看>>
关于display aspect ratio
查看>>
CentOS7 网卡启动失败解决方案
查看>>
BroadcastReceiver的两种注册方式(静态注册和动态注册)
查看>>
主机win7与虚拟linux无法ssh问题解析
查看>>
8.1.3 链路状态数据库
查看>>
I/O重定向和管道——《Unix/Linux编程实践教程》读书笔记(第10章)
查看>>
华章1-2月份新书简介(2018年)
查看>>
PreparedStatement的用法
查看>>
For多重循环 break continue
查看>>
Spring源码解析:Bean实例的创建与初始化
查看>>
我的友情链接
查看>>
百度是如何给每个人免费提供2TB存储空间的?
查看>>
php7.2.6源码编译安装
查看>>
Titanium Terminal 不好使的解决办法
查看>>
我的友情链接
查看>>
BaseRecyclerViewAdapterHelper开源项目之点击事件源码学习
查看>>
JAVA解析JSON大全
查看>>