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

嵌套循环变量重置问题:海浪高度分析循环结果异常求助

问题分析与解决代码

你的代码问题出在这几个地方:

  • 只在循环外随机生成了一次x,第一次循环后x已经走到海浪高度低于1.75的位置,后续循环里while条件直接不触发,所以n一直是第一次的结果
  • n没有在每次循环里重置为0,就算重新选x,也会累计之前的次数
  • range(1,100)只会执行99次,不是你要的100次

修正后的代码如下:

import random
målinger = []

# 循环100次
for _ in range(100):
    # 每次循环都重新随机选初始x,重置n为0
    x = random.randint(1, 2919)
    n = 0
    # 用loc更规范,替代_get_value
    while df.loc[x, 'BØLGEHØYDE'] > 1.75:
        x += 1
        n += 1
        # 加边界判断,防止x超出数据集索引范围报错
        if x > 2919:
            break
    målinger.append(n)

print(målinger)

额外提醒:加上x > 2919的判断是为了防止如果从某个x开始,后续所有海浪高度都大于1.75,x会一直自增直到超出数据集索引范围,导致报错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 07:52:44