【问题标题】:Table printing nil on LuaLua 上的表格打印 nil
【发布时间】:2014-06-20 10:02:31
【问题描述】:

我有这段代码是用 Lua 写的,它只是一个示例代码,因为我使用的实际代码比这个大,但这是我遇到问题的部分。

有谁知道为什么当我尝试打印表格t 中的内容时,结果是nil

t = {
{name="John",sex="M",age=19},
{name="Susan",sex="F",age=20}
} 

for _ in ipairs(t) do 

    print("NAME: " .. t.name) 
    print("SEX: " .. t.sex) 
    print("AGE: " .. t.age)
    print("\n") 

end 

我的意思是,这是我运行代码时得到的结果:

attempt to concatenate field 'name' (a nil value)

【问题讨论】:

    标签: lua null lua-table


    【解决方案1】:

    迭代t 不会改变t。您需要指定将要迭代的值放在何处,并使用这些变量。

    local t = {
        {name="John",sex="M",age=19},
        {name="Susan",sex="F",age=20}
    } 
    
    for index, value in ipairs(t) do 
        print("NAME: " .. value.name) 
        print("SEX: " .. value.sex) 
        print("AGE: " .. value.age)
        print("\n") 
    end 
    

    【讨论】:

    • 谢谢!我不知道。实际上,这是一个愚蠢的例子,所以我可以更改我在项目中使用的原始代码,我从一个大文本文件中获取数据并将它们放在一个表格中,但我无法打印这些数据,我现在尝试原始代码,它工作,所以谢谢!
    • @cfrancklin:您还应该通过单击绿色复选框将此答案标记为解决您的问题。
    猜你喜欢
    • 2018-05-19
    • 1970-01-01
    • 2019-03-10
    • 2020-04-21
    • 2017-10-05
    • 1970-01-01
    • 1970-01-01
    • 2018-09-05
    • 1970-01-01
    相关资源
    最近更新 更多