管理 Lua 5.3 ".0" 行为

在 Lua 5.3 中,当一个数字是没有任何小数部分的浮点数时,将其打印出来会在末尾添加 ".0",给我的高尔夫和速度竞赛带来错误答案。舍入或 ~~xx|0 强制它成为整数类型,但对于一个问题,如“找到平均值”,它可能是一个整数或带有小数点,简单地打印 sum/size 会每次都给出错误答案,因为它以 ".0" 结尾而不是什么也没有。所以需要额外的检查,在代码高尔夫解决方案中添加字符以及额外的测试和编写代码的时间来进行速度竞赛。除了请求竞赛持有者接受以 ".0" 结尾的整数作为答案,有什么好的方法来处理这种行为吗?

点赞
用户343123
用户343123

不要期望 "print" 去猜测你想要的数字格式。如果你想要一个特定的格式,使用 'string.format'。例如,当数字为整数值时,string.format ("%g", x) 不会添加 .0。

2019-11-16 19:50:17