字符串到 Float64:单值上下文中的多值 strconv.ParseFloat()

String to Float64: multiple-value strconv.ParseFloat() in single-value context

我有一个像这样的 STRING 切片数组:

[[header1 header2 startdate enddate header3 header4] 
[item1 100 01/01/2017 02/01/2017 5343340.56343 3.77252223956] 
[item2 554 01/01/2017 02/01/2017 22139.461201388 17.232284405]]

请记住,数组不断增加。我只是发布一个示例数组。

现在我将一些浮点数转换为字符串,以便我可以将其附加到字符串切片。但是,我需要用这些数字做一些数学运算。我想将第二个切片中的字符串编号 (5343340.56343) 添加到第三个字符串编号 (22139.461201388)。每个切片中的其他 2 个浮点数也是如此。为此,我需要先将它们转换为 float64。得到总和后,我需要将它们转换回字符串,这样我就可以将它附加到我的切片中,我会弄清楚该怎么做。

要将字符串项目转换为 float64,这是我所拥有的:

for _, i := range data[1:] {
    if i[0] == "item1" {
        j := strconv.ParseFloat(i[4], 64)


    }
    if i[0] == "item2" {
        k := strconv.ParseFloat(i[4], 64)
    }
    sum := j + k
}

这给出了一个错误:单值上下文中的多值 strconv.ParseFloat() 所以我的问题是:

  1. 如何将字符串值转换为 Float64。

  2. 可选:关于如何从每个切片中添加 2 个浮点数的任何建议?

感谢任何帮助!

你得到的错误是因为函数 ParseFloat returns 有两个参数而你忽略了第二个。

j, err := strconv.ParseFloat(i[4], 64)
if err != nil {
  // insert error handling here
}
(...)

尝试在使用前始终检查 godocs 中的函数签名。