Lua 什么';s返回&;我做错了什么(卢阿)

Lua 什么';s返回&;我做错了什么(卢阿),lua,Lua,我有两个问题,一个是卢阿的回报是什么?我一直在互联网上搜索,寻找它的作用/意义及其目的。2.我在编码此部分时遇到问题: testGrade={} testGrade.Joe = 86 testGrade.Josh = 75 testGrade.Jack = 12 testGrade.Andrew = 0 testGrade.Larry = 100 testGrade.Noah = 94 testGrade.Blakely = 67 for k,v in pairs(testGrade) do

我有两个问题,一个是卢阿的回报是什么?我一直在互联网上搜索,寻找它的作用/意义及其目的。2.我在编码此部分时遇到问题:

testGrade={}
testGrade.Joe = 86
testGrade.Josh = 75
testGrade.Jack = 12
testGrade.Andrew = 0
testGrade.Larry = 100
testGrade.Noah = 94
testGrade.Blakely = 67

for k,v in pairs(testGrade) do
    local maxGrade = 100
    if testGrade[grade] == 100 then
        Msg("Congratulations "..k..", you scored a "..v.." out of "..maxGrade.." getting every question right!\n");
    elseif testGrade[grade] >= 90 then
        Msg("Congratulations "..k..", you scored a "..v.." out of "..maxGrade.." getting an A!\n");
    elseif testGrade[grade] >= 80 then
        Msg(k..", you scored a "..v.." out of "..maxGrade.." getting a B.\n");
    elseif testGrade[grade] >= 70 then
        Msg(k..", you scored a "..v.." out of "..maxGrade.." getting a C, try harder next time.\n");
    elseif testGrade[grade] >= 60 then
        Msg(k..", you scored a "..v.." out of "..maxGrade.." getting a D, you need to study!\n");
    elseif testGrade[grade] == 0 then
        Msg(k..", you scored a "..v.." out of "..maxGrade.." getting NOTHING right! Did you even try?!\n"); 
    else
        Msg(k..", you scored a "..v.." out of "..maxGrade.." making you fail. You need to try harder and study!\n"); 
    end
end

我试着做一些练习编码,但我在这个问题上被难住了。评论很有帮助;)

返回
从函数返回值

发件人:

return语句用于从函数或块(只是函数)返回值。函数和块可以返回多个值return语句用于从函数或块(只是函数)返回值。函数和块可以返回多个值,因此return语句的语法是

stat::=return[explist]

这里没有函数,因此不需要在任何地方使用
return

您正试图使用
testGrade[grade]
获取当前学生的成绩,但
grade
没有值(您从未将其分配到任何位置)

循环中
k
的值是表中的键(学生姓名)

循环中
v
的值是表中键的值(学生的分数)

因此,将k的
,v成对(testGrade)do
更改为
学生的
成对(testGrade)do
并替换所有
testGrade[成绩]
在与just
grade
的比较中,它应该起作用,并将
k
的所有用法替换为
student
,将
v
替换为
grade
,它将起作用


一个更微小的变化是(正如刚刚在注释中添加的RetiredInja)在比较中将
testGrade[grade]
替换为
v

它从函数返回一个值。From:“return语句用于从函数或块(仅为函数)返回值。函数和块可返回多个值return语句用于从函数或块(仅为函数)返回值。函数和块可返回多个值,…”。似乎您想将
testGrade[grade]
的每一个案例都替换为
v
。您在其他地方使用了
k
v
,所以我不确定断开连接的位置。@Retired Ninja啊,对不起。我忘了换那部分。我使用的是以前使用过的过时代码,在我学习其他循环策略之前,我使用grade作为变量。真的很累,没发现。我很困惑哈哈。啊,谢谢。我忘了换那部分。我使用的是以前使用过的过时代码,在我学习其他循环策略之前,我使用grade作为变量。谢谢