仅在 os.time() 中显示最后一位数字。

我正在尝试编写一个每秒打印不同内容的函数。

最简单的方法(我认为)是检查整数是偶数还是奇数。

  • 在偶数上,它应该打印'x'。
  • 在奇数上,它应该打印'y'。

我的问题是我不知道如何改变os.time的整数值,只显示最后一个数字(只显示0到9),以便我可以轻松地将其实现在我的代码中。

到目前为止,这就是我所拥有的:

local seconds = os.time() --but only show last digit, e.g. 0 to 9

function changeStr()
    if (seconds % 2 == 0) then
        print("x")
    else
        print("y")
    end
}
点赞
用户501459
用户501459

怎样才能将 os.time的整数值更改为仅显示最后一位数字(仅显示0到9)

os.time的值除以10并取余数,这样您将得到仅包含10位数字的结果。

seconds % 10
2015-08-25 19:11:04
用户107090
用户107090

如果想要一个包含时间最后一位数字的字符串,请尝试:

string.sub(os.time(),-1)
2015-08-26 02:32:58