gpt4 book ai didi

go - 如何在 Golang 中将 []string 转换为 []float64?

转载 作者:IT王子 更新时间:2023-10-29 00:37:54 24 4
gpt4 key购买 nike

我是编程新手,正在尝试用 Go 编写一个简单的普通程序。

package main

import (
"fmt"
"os"
)

var numbers []float64
var sum float64 = 0

func main() {

if len(os.Args) > 1 {

numbers = os.Args[1:]

}

fmt.Println("Numbers are: ", numbers)
for _, value := range numbers {
sum += value
}

}

http://play.golang.org/p/TWNltPO71N

当我构建程序时,我得到了这个错误:

prog.go:15: cannot use os.Args[1:] (type []string) as type []float64 in assignment
[process exited with non-zero status]

那么如何将一段字符串转换成一段 float 呢?我可以将转换函数映射到 slice 吗?

最佳答案

您需要使用 strconv.ParseFloat 将字符串转换为 float64功能:

package main

import (
"fmt"
"os"
"strconv"
)

var numbers []float64
var sum float64 = 0

func main() {

if len(os.Args) <= 1 {
return
}

for _, arg := range os.Args[1:] {
if n, err := strconv.ParseFloat(arg, 64); err == nil {
numbers = append(numbers, n)
}
}

fmt.Println("Numbers are: ", numbers)
for _, value := range numbers {
sum += value
}

}

关于go - 如何在 Golang 中将 []string 转换为 []float64?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27875479/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com