【问题标题】:Unexpected symbol near '<''<' 附近的意外符号
【发布时间】:2015-09-24 22:04:39
【问题描述】:

我正在尝试在 Lua 中编写一些代码,您必须正好 12 岁才能打印"Welcome!"。但是,每当我运行此代码时,我都会收到一条错误消息,提示

错误消息说这是在第 3 行。如果可能,谁能指出此代码中的其他潜在错误?我的代码如下所示:

io.write ("Enter your age:")
    age = io.read()
if age == <12 then
    print ("O noes, you are too young!")
elseif age == >12 then
    print ("O noes, you are too old!")
else 
    print ("Welcome, son!")
end

【问题讨论】:

    标签: lua garrys-mod


    【解决方案1】:

    你有不必要的=='s。

    把代码改成:

    io.write ("Enter your age:")
    age = io.read()
    if age < 12 then
        print ("O noes, you are too young!")
    elseif age > 12 then
        print ("O noes, you are too old!")
    else 
        print ("Welcome, son!")
    end
    

    当您检查一个变量是否大于小于另一个变量时,您不需要==

    例如:if (7 &lt; 10) thenif (9 &gt; 3) then


    这也可能有帮助:

    由于这是您的第一个 Lua 代码,请注意,如果您要检查变量是否大于或等于(或小于或等于),您可能需要写成if (5 &gt;= 5) thenif (3 &lt;= 3) then

    当你只检查它是否等于另一个变量时,你只需要==

    示例:if (7 == 7) then

    【讨论】:

    • 谢谢先生!您已经修复了旧的错误消息,但现在出现了新的错误消息。消息是“尝试将 nil 与数字进行比较”。它在第 3 行。我已将脚本更改为您告诉我的。感谢您的帮助!
    • 没问题。然而对于新的错误,这个错误会出现,因为变量 age 是一个 nil 值,也许是因为它是一个字符串。在 age = io.read() 下方添加 age = tonumber(age)。我相信这应该可以解决它。
    • 感谢您进一步尝试帮助,但我仍然收到相同的错误消息。
    • 你尝试了我的两个建议中的哪一个?
    • 我使用了第一个(tonumber),因为我相信第二个不是我想要的脚本(我想要一个输入框,而不是打印)
    猜你喜欢
    • 1970-01-01
    • 2022-01-16
    • 2013-01-16
    • 2023-03-18
    • 2020-02-21
    • 2019-04-23
    • 2020-09-14
    • 2023-03-27
    • 2012-10-23
    相关资源
    最近更新 更多