我有一行代码如下:
fmt.Printf("Total Calories: %2.f (%2.f%%)\n", item.calorie.TotalCalories, item.calorie.TotalCalories/dailyCalorie*100)
应该输出:
Total Calories: 150 (5%)
但相反,我在paranthesis的开头和数字5之间得到一个间距,如下所示:
Total Calories: 150 ( 5%)
我不明白我哪里出错了。
答案 0 :(得分:5)
%2.f
的默认宽度为2.您可以尝试%f
。
宽度由紧接在前的可选十进制数指定 动词。如果不存在,则宽度是表示必要的宽度 价值。精度在(可选)宽度后指定 句点后跟一个十进制数。如果没有句号,a 使用默认精度。没有以下编号的期间指定 精度为零。例子:
%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.