猿问

如何在 golang 中的 for 循环中返回所有值

在 python 中,我可以返回我在数组中附加的值


valuesinPy= []

for i range(len(value)) :

   valuesinPy.append(value[i])

return valuesinPy 

  

它能够返回我想在 golang 中附加的所有值


valueappend =make(map[strig]string)

for i :=range value{

    valueappend['abs']=value[i]

}

return  valueappend  

都是一样的 但是返回的值是一样的 我搞糊涂了


问题修复

我使用map [string]interface{}{} I less one struct of slice


valueappend:=map[string]interface{}{}

for i :=range value{

   valueappend= append(valueappend, map[string]interface{}{

        "valueIwant append" value[i] :

     }

}

return valueappend


千巷猫影
浏览 144回答 2
2回答

潇潇雨雨

我可以看到的一个问题是您使用的密钥在循环的所有迭代中都是相同的valueappend['abs']=value[i]这将覆盖所有以前的值,您将只保存循环中的最后一个值。最后你会得到一张只有一个值的地图。我猜这不是你想要的。Use 可以为每次迭代使用一个唯一的键,如下所示,或者沿着同一行的其他东西for i := range value {    valueappend[i]=value[i]}@范纪予请添加更多信息并阐明您要在此处实现的目标。

30秒到达战场

您可能需要在每次执行循环时更改地图的值,否则来自的每个值都value[i]将继续写入地图中的同一字段,留下 i 的最后一个值作为地图中的唯一值
随时随地看视频慕课网APP

相关分类

Go
我要回答