我在lua脚本中接收来自redis的哈希,其中包含字符串格式的数字.
1) "30"
2) "30.7"
3) "12.7"
4) "15.7"
5) "20.7"
6) "19.7"
7) "20.5"
8) "21.5"
9) "22.3"
10) "30.7"
Run Code Online (Sandbox Code Playgroud)
我知道Lua不区分浮点数和整数.
这是脚本:
local sum = "0.0"
local matches = redis.call('KEYS', 'sdid:*')
for _,key in ipairs(matches) do
local val = redis.call('HGET', key ,'data')
sum = sum + val
end
return sum
Run Code Online (Sandbox Code Playgroud)
我收到整数格式的结果((整数)224)我怎样才能收到真实格式字符串"224.5"的结果?
在算术运算中,Lua自动将包含数字的字符串转换为数字.
所以,只需添加字符串,a+b+c
您将获得数字6.6.
如果你希望结果有1个小数位,即使它是一个整数,请使用string.format("%.1f",sum)
.
归档时间: |
|
查看次数: |
308 次 |
最近记录: |