为了账号安全,请及时绑定邮箱和手机立即绑定

以表格形式打印数据

以表格形式打印数据

Go
慕雪6442864 2022-10-24 15:35:05
我有一个代码,将值打印到 3 列,但我不能在直列中打印它们fmt.Printf("%d       | %.1f      | %.5f      | \n", int(i), x, val)我得到这个:0       | 0.0      | error      | 1       | 90.0      | error      |2       | 180.0      | -0.00000      |3       | 270.0      | 3.94795      |4       | 360.0      | error      |5       | 450.0      | error      |6       | 540.0      | -0.00000      |7       | 630.0      | 3.94795      |8       | 720.0      | error      |我在 go 中找不到这样做的方法。
查看完整描述

1 回答

?
白衣非少年

TA贡献1155条经验 获得超0个赞

你可以看看tabwriter

包 tabwriter 实现了一个写入过滤器 (tabwriter.Writer),它将输入中的选项卡列转换为正确对齐的文本。

package main


import (

    "fmt"

    "os"

    "text/tabwriter"

)


func main() {

    w := tabwriter.NewWriter(os.Stdout, 10, 1, 1, ' ', tabwriter.Debug)

    fmt.Fprintf(w, "%d\t%v\t%v\t\n", 0, 0.0, "error")

    fmt.Fprintf(w, "%d\t%v\t%v\t\n", 0, 90.0, "error")

    fmt.Fprintf(w, "%d\t%v\t%v\t\n", 7, 630.0, 3.94795)

    w.Flush()

}

https://go.dev/play/p/_u5W46AZ5sq


查看完整回答
反对 回复 2022-10-24
  • 1 回答
  • 0 关注
  • 131 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号