如何在没有科学记数法的情况下在Golang中将float打印为字符串
发布时间:2020-12-16 19:03:38 所属栏目:大数据 来源:网络整理
导读:假设我有一个包含2个项目的数组,其类型为string / float. 如何在没有浮动项目的科学记号的情况下将它们打印在一起. 例如: package mainimport ( "fmt")func main() { values := []interface{}{"mydata",1234567890.123} for _,v := range values{ fmt.Print
假设我有一个包含2个项目的数组,其类型为string / float.
如何在没有浮动项目的科学记号的情况下将它们打印在一起. 例如: package main import ( "fmt" ) func main() { values := []interface{}{"mydata",1234567890.123} for _,v := range values{ fmt.Printf("%vn",v) } } 输出将是
我想要的是
fmt 的软件包文档解释了它:%v动词是默认格式,对于浮动数字意味着/恢复为%g,这是
如果您总是想要“小数点但没有指数,例如123.456”,请明确使用%f. 但是您只能将其用于浮动数字,因此您必须检查打印值的类型.为此,您可以使用type switch或type assertion. 例: switch v.(type) { case float64,float32: fmt.Printf("%fn",v) default: fmt.Printf("%vn",v) } 输出(在Go Playground上试试): mydata 1234567890.123000 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |