Golang字符串格式提供了意外的间距

Golang字符串格式提供了意外的间距,go,Go,我有一行代码如下所示: fmt.Printf("Total Calories: %2.f (%2.f%%)\n", item.calorie.TotalCalories, item.calorie.TotalCalories/dailyCalorie*100) Total Calories: 150 ( 5%) 它应该输出: Total Calories: 150 (5%) 但我得到的是偏执狂的开始和数字5之间的间隔,如下所示: fmt.Printf("Total Calories: %2

我有一行代码如下所示:

fmt.Printf("Total Calories: %2.f (%2.f%%)\n", item.calorie.TotalCalories, item.calorie.TotalCalories/dailyCalorie*100)
Total Calories: 150 ( 5%)
它应该输出:

Total Calories: 150 (5%)
但我得到的是偏执狂的开始和数字5之间的间隔,如下所示:

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

我不明白我哪里出错了。

%2。f
的默认宽度为2。您可以试试
%f

宽度由紧跟在前面的可选十进制数指定 动词。如果没有,则宽度是表示所需的任何宽度 价值。精度是在(可选)宽度后指定的 小数点后的句点。如果不存在期间,则为 使用默认精度。没有以下数字的句点指定 零精度。示例:


您可以阅读文档

%2。f
的默认宽度为2。您可以试试
%f

宽度由紧跟在前面的可选十进制数指定 动词。如果没有,则宽度是表示所需的任何宽度 价值。精度是在(可选)宽度后指定的 小数点后的句点。如果不存在期间,则为 使用默认精度。没有以下数字的句点指定 零精度。示例:

您可以阅读文档