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

如何为指定区间内的数字加偏移量,超出范围时自动绕回区间开头

问题解决

你当前的代码仅做了简单的加法计算,没有实现超出区间后的循环绕回逻辑,才会输出97的结果。要实现目标效果可以用模运算处理溢出逻辑,具体方案如下:

实现逻辑

  • 先获取区间的起始值、总长度:range类型自带start和stop属性,区间总长度为stop - start
  • 把当前数值转换为相对于区间起点的相对偏移量,加上你要累加的偏移值后对区间总长度取模,得到循环后的相对位置
  • 相对位置加上区间起点就是最终结果

修正后代码

big = range(60,90)
num = 84
add_offset = 13

if num in big:
    start = big.start
    range_length = big.stop - start
    final_num = start + (num - start + add_offset) % range_length
    print(final_num)

运行以上代码输出结果为67,符合你的预期。不管累加的偏移值多大,该逻辑都能自动完成循环绕回,最终结果始终落在big的区间范围内。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 06:39:00