2

如何s = "6.1101,17.592,3.3245\n"在 Lua 中将字符串转换为数字。

在python中,我通常这样做

a = s.strip().split(',')
a = [float(i) for i in a]

使用 Lua 执行此操作的正确方法是什么?

4

1 回答 1

3

这是相当微不足道的;只是做一个重复的比赛:

for match in s:gmatch("([%d%.%+%-]+),?") do
  output[#output + 1] = tonumber(match)
end

这当然假设数字中没有空格。

于 2012-08-31T09:39:01.047 回答