如何在没有浮动项目的科学记号的情况下将它们打印在一起.
例如:
package mainimport ( "fmt")func main() { values := []interface{}{"mydata",1234567890.123} for _,v := range values{ fmt.Printf("%v\n",v) }}
输出将是
mydata
1.234567890123e+09
我想要的是
mydata
1234567890.123
fmt
的软件包文档解释了它:%v动词是默认格式,对于浮动数字意味着/恢复为%g,这是 %e for large exponents,%f otherwise. Precision is discussed below.
如果您总是想要“小数点但没有指数,例如123.456”,请明确使用%f.
但是您只能将其用于浮动数字,因此您必须检查打印值的类型.为此,您可以使用type switch或type assertion.
例:
switch v.(type) {case float64,float32: fmt.Printf("%f\n",v)default: fmt.Printf("%v\n",v)}
输出(在Go Playground上试试):
mydata1234567890.123000总结
以上是内存溢出为你收集整理的如何在没有科学记数法的情况下在Golang中将float打印为字符串全部内容,希望文章能够帮你解决如何在没有科学记数法的情况下在Golang中将float打印为字符串所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)