我在Golang中将float转换为这样的字符串
a := strconv.FormatFloat(-3.6739403974420544e-15, 'f', -1, 64)
它给我这个输出
-0.0000000000000036739403974420544
但是,我宁愿将此作为输出
"-3.673940397442059e-15"
在这个问题的标题中,我说“不改变”浮动。通过“改变”,我指的是添加0代替e-15。有办法吗?
答案 0 :(得分:3)
我认为你只是使用了错误的格式说明符:
package main
import (
"fmt"
"strconv"
)
func main() {
fmt.Println(strconv.FormatFloat(-3.6739403974420544e-15, 'e', -1, 64))
}
输出:
-3.6739403974420544e-15
docs也会显示其他格式。
答案 1 :(得分:2)
这应该这样做
f := -3.6739403974420544e-15
fmt.Println(fmt.Sprint(f))