You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python 3.11.3中range()函数输出异常问题求助

关于Python 3中range()输出的问题

首先要明确:你看到的资料大概率是针对Python 2的,Python 3里的range()行为已经发生了变化。

在Python 3中,range()返回的是一个range对象(一种节省内存的可迭代序列),而非直接生成列表,所以直接执行print(range(4))会输出range(0, 4),这是正常现象,不是程序异常。

如果想要得到你预期的列表形式,需要把range对象转换成列表:

print(list(range(4)))  # 输出 [0, 1, 2, 3]

另外,你提到预期输出是[1,2,3,4],这说明你还没注意到range()的参数规则:

  • range(n)默认从0开始,到n-1结束,所以range(4)覆盖0-3
  • 要生成1到4的序列,需要指定起始和结束值:range(1, 5)(结束值是开区间,所以要写5)
    对应的代码是:
print(list(range(1, 5)))  # 输出 [1, 2, 3, 4]

你用help(range)时可以仔细看参数说明:range(start, stop[, step]),当只传一个参数时,这个参数是stop,start默认值为0。

内容的提问来源于stack exchange,提问作者qualquercoisa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 09:34:53