为了账号安全,请及时绑定邮箱和手机立即绑定

循环函数/

循环函数/

潇潇雨雨 2022-10-25 14:47:15
我希望函数以 j 的所有值执行,而不仅仅是最后一个:for j in range(0, 10):    barcode = np.zeros(length)    noisyI = np.random.normal(0,9,length)    area = 1.0 + 0.1*j    res = HHmodel(noisyI,length,area)现在我得到 j = 10 的值,因此对于 area = 1 + 1.0 * 10 的回报,而不是所有 j - 这将是为 j 开发一个“时间序列”并查看返回值有多少的问题函数根据区域改变行为 - 但正如我所说,我只得到最后一个 j 的值。谢谢你一个BR
查看完整描述

2 回答

?
红糖糍粑

TA贡献1815条经验 获得超6个赞

在每次迭代中,变量的值都会发生变化,因此您只能获得 j = 10 的值。您可以将结果保存在字典列表中,以便为每次迭代保存所有变量的值:


your_list = []

for j in range(0, 10):

    dict = {}


    dict['j'] = j

    barcode = np.zeros(length)

    dict['barcode'] = barcode


    noisyI = np.random.normal(0,9,length)

    dict['noisyI'] = noisyI


    area = 1.0 + 0.1*j

    dict['area'] = area


    res = HHmodel(noisyI,length,area)

    dict['res'] = res


    your_list.append(dict)


print(your_list)


查看完整回答
反对 回复 2022-10-25
?
当年话下

TA贡献1890条经验 获得超9个赞

将 res 附加到列表并返回列表。


output = []

for j in range(0, 10):

    barcode = np.zeros(length)

    noisyI = np.random.normal(0,9,length)

    area = 1.0 + 0.1*j

    res = HHmodel(noisyI,length,area)

    output.append(res)


查看完整回答
反对 回复 2022-10-25
  • 2 回答
  • 0 关注
  • 123 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信