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

如何将循环生成的数据存入数组?logistic map代码数组为空问题排查

数组为空的原因

你仅定义了MeGustaElCereal函数但没有执行调用操作,函数内部的append逻辑从未实际运行,因此打印的owo始终是空数组。

按mu值分开存储的实现

可以通过新增外层for循环遍历mu列表实现,你可以将owo改为嵌套数组,每个子数组对应单个mu值的所有迭代结果,修改后的完整代码如下:

mu_list = [2.8, 3.3, 3.5, 3.8, 3.99]
N = 1000
init_x = 0.1
# owo为嵌套列表,结构为 owo[mu序号][迭代步长序号]
owo = []

def MeGustaElCereal(init_x, mu, N):
    x = init_x
    current_res = []
    for n in range(N):
        f = mu * x * (1.0 - x)
        x = f
        current_res.append(f)
    return current_res

# 外层循环遍历所有mu值分别计算
for mu in mu_list:
    single_mu_res = MeGustaElCereal(init_x, mu, N)
    owo.append(single_mu_res)

# 验证结果:打印第一个mu的前5个计算值
print(owo[0][:5])

逻辑说明

  • 移除了函数内部对全局变量owo的直接修改,改为返回单个mu的计算结果,逻辑更易维护
  • 每次计算新的mu值时都会重置初始x为0.1,避免前一个mu的迭代结果干扰后续计算
  • 后续绘制直方图时,可以直接通过owo[i]取出第i个mu对应的所有迭代值单独绘图

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 12:39:01