python 基础

这篇文章主要是个人笔记,对python一些基础知识做记录

1:range 和 xrange的区别
range
用法:range(start, end, step = 1)
说明:取值区间[start, end), 间隔为step
返回:list列表,遍历得时候需要在内存中创建整个list表对象

# intput:
import sys
r = range(5) # 相当于range(0, 5, 1)
print r
print type(e)
print sys.getsizeof(r)

#  output:
#  [0, 1, 2, 3, 4]
#  <type 'list'>
#  104

xrange
用法: xrange(start, end, step = 1)
说明:取值区间[start, end), 间隔为step
返回:xrange对象,可迭代对象

#  input
import sys
r = xrange(5)
print r
print type(e)
print sys.getsizeof(r)

# output
# xrange(5)
# <type 'xrange'>
# 32

有上面得列子可以看到两者还是有本质得区别得,range返回得是list对象,xrange返回得是xrange对象(可迭代对象)
所以,使用range时,需要创建整个列表,返回时要在内存在拷贝整个列表,当列表很大时,耗时和内存都是不能接受的。
如果是在for 循环中使用,建议使用xrange,如果想要返回的是list,则使用range

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值