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

Python中未知两整数起止大小前提下获取含两端值范围的Pythonic方法

实现方案

方案1:全版本兼容(Python3全支持,可读性最佳)

直接通过分支判断生成对应序列,无冗余重复比较,逻辑直观易读:

list(range(a, b + 1)) if a <= b else list(range(a, b - 1, -1))

测试验证:

  • 入参a=4, b=7,返回结果为[4, 5, 6, 7]
  • 入参a=7, b=4,返回结果为[7, 6, 5, 4]

完全匹配需求,无额外临时变量,代码简洁符合Pythonic规范。

方案2:Python3.8+ 更短写法(使用海象运算符)

如果运行环境支持Python3.8及以上版本,可以通过海象运算符复用步长计算结果,进一步缩短代码:

list(range(a, b + (s:=1 if a < b else -1), s))

该写法仅执行一次大小比较,运行效率略高于分支写法,同样没有额外临时变量。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 14:24:00