我有一個代碼,將值打印到 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
- 1 回答
- 0 關注
- 136 瀏覽
添加回答
舉報
0/150
提交
取消
