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

求助:Python实现循环生成指定键值序列的正确代码

问题描述

需要编写Python代码生成如下格式的输出:

0 460, 1 3600, 2 2486, 3 460 ,4 3600, 5 2486, 6 460 ....

要求上述数值序列(460、3600、2486)循环生成237次。以下是编写的错误代码,输出不符合预期:

a = 0
for i in range(238):
  a = 460
  print(i, a)
  a = 3600
  print(i, a)
  a = 2486
  print(i, a)
修正方案

原代码的核心问题是:每次循环重复使用同一个i值输出三次,导致序号重复,而预期是序号从0开始连续递增,每3个序号对应一轮数值循环。

修正后的代码

# 定义循环的数值序列
cycle_values = [460, 3600, 2486]
# 计算总条目数:237次循环 × 3个数值
total_entries = 237 * 3
# 生成所有条目字符串
output_segments = []
for index in range(total_entries):
    # 通过取模循环获取对应数值
    current_value = cycle_values[index % 3]
    output_segments.append(f"{index} {current_value}")
# 用", "连接所有条目并打印
print(", ".join(output_segments))

更简洁的写法

cycle_values = [460, 3600, 2486]
print(", ".join([f"{i} {cycle_values[i%3]}" for i in range(237*3)]))

说明

  • 序号从0开始连续递增,共生成711个条目(237×3)
  • 通过index % 3实现数值序列的循环选取
  • 最终将所有条目拼接成一行输出,完全匹配预期格式

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 12:55:15