gpt4 book ai didi

go - 将一片字符串转换为一片 float32

转载 作者:数据小太阳 更新时间:2023-10-29 03:43:49 26 4
gpt4 key购买 nike

在我的程序中,我通过 bufio 扫描器将一串数字(例如:54 43.3 -43.2)添加到 slice 中。然后我想将每个空间的 slice 拆分成另一个 slice 以将其转换为float32。这是我所拥有的:

var newSlice []float32
sliceScan = scanner.Text()
s := strings.Split(sliceScan, " ")
for i:= 0; i < len(s); i+=1 {
newSlice[i] = (float32) s[i]
}

当我运行它时,我得到了这个错误:

syntax error: unexpected s at the end of statement

最佳答案

您可以使用 strconv.ParseFloat :

var newSlice []float32
sliceScan = scanner.Text()
s := strings.Split(sliceScan, " ")
for i:= 0; i < len(s); i+=1 {
f64, err := strconv.ParseFloat(s[i], 32)
newSlice = append(newSlice, float32(f64))
}

或者可能更好:

sliceScan = scanner.Text()
s := strings.Split(sliceScan, " ")
newSlice := make([]float32, len(s), len(s))
for i:= 0; i < len(s); i+=1 {
f64, err := strconv.ParseFloat(s[i], 32)
newSlice[i] = float32(f64)
}

关于go - 将一片字符串转换为一片 float32,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49680978/

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