我希望函数以 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)
当年话下
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)
添加回答
举报
0/150
提交
取消