【问题标题】:Golang string formatting gives unexpected spacingGolang 字符串格式提供了意想不到的间距
【发布时间】:2018-04-30 20:07:21
【问题描述】:

我有一行代码如下所示:

fmt.Printf("Total Calories: %2.f (%2.f%%)\n", item.calorie.TotalCalories, item.calorie.TotalCalories/dailyCalorie*100)

应该输出:

Total Calories: 150 (5%)

但是我在括号的开头和数字 5 之间得到一个间距,如下所示:

Total Calories: 150 ( 5%)

我不明白我哪里出错了。

【问题讨论】:

    标签: go


    【解决方案1】:

    %2.f 给出的默认宽度为 2。您可以尝试 %f

    宽度由前面的可选十进制数指定 动词。如果不存在,则宽度是表示所必需的 价值。精度在(可选)宽度之后由 句点后跟一个十进制数。如果不存在经期,则 使用默认精度。无后数的期间指定 精度为零。例子:

    %f     default width, default precision
    %9f    width 9, default precision
    %.2f   default width, precision 2
    %9.2f  width 9, precision 2
    %9.f   width 9, precision 0
    

    您可以阅读文档here.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多