Lua新手 - 表操作

2 lua lua-table

谁可以给我解释一下这个?我已经通过本教程想出了这个被称为表格.来自C/C++背景,有人可以解释这是如何工作的(我试图理解一些现有的Lua代码)?

config = {
  devices = {
    C56    = "/dev/ttyS2",
    ELTRA  = "/dev/ttyS3",
--  MICORE = "/dev/ttyS4",
    HID    = "/dev/ttyS1",

    KEYCARD = {
  --  [6] = { tty="/dev/ttyS1", speed=9600 },
      [7] = { tty="/dev/ttyS4", speed=9600 },
    },

  },
}
Run Code Online (Sandbox Code Playgroud)

它是一个配置表,由一个设备表组成,但是有一个KEYCARD表吗?什么是Lua中的C56和ELTRA?他们是田地吗?

Kar*_*tan 8

Lua中的表只是一个无类型的映射,如Javascript对象或Python字典.该表将一个值(如"devices"或6)与另一个值(如"/ dev/ttyS2")相关联.该值可以是另一个表.表用于创建对象,映射和数组.

在您的示例中,config变量引用一个表.该表有一个元素"devices",其值是另一个表.该表有5个元素.其中四个元素("C56","ELTRA","MICORE"和"HID")将字符串作为其值.第五个元素("KEYCARD")有一个表作为其值. 表有两个元素(6,7),其值为其他表(两个元素中的每一个).