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

如何遍历固定长度列表,到达末尾后自动从头开始循环?

纯Python实现基于偏移量的循环星期匹配

核心思路

利用Python的取模运算(%)处理循环索引,因为星期列表固定7个元素,偏移量对7取模后会自动落在0-6的有效索引范围内,无论偏移量是正数还是负数,都能直接匹配到对应的星期元素。

代码实现

  1. 定义星期列表(可根据需求调整顺序,比如以周日开头)
week_days = ["周一", "周二", "周三", "周四", "周五", "周六", "周日"]
  1. 编写偏移匹配函数
def get_target_weekday(offset):
    # 对偏移量取模,得到有效索引
    target_index = offset % len(week_days)
    return week_days[target_index]

测试示例

  • 偏移量0(无偏移):get_target_weekday(0) → 返回"周一"
  • 偏移量7(整周循环):get_target_weekday(7) → 返回"周一"
  • 偏移量3:get_target_weekday(3) → 返回"周四"
  • 偏移量-1(往前偏移1天):get_target_weekday(-1) → 返回"周日"
  • 偏移量10(1周+3天):get_target_weekday(10) → 返回"周四"

原理说明

取模运算会自动处理循环逻辑:

  • 正数偏移:超过7的部分会被"截断",比如10%7=3,等价于偏移3天
  • 负数偏移:Python的取模会返回非负结果,比如-1%7=6,对应列表最后一个元素,完美实现"循环到开头"的需求

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 06:10:04