Lua 从非数值表的值创建数值表
正如你们所看到的,我不能称之为背包[1],因为它不是一个数字表,我如何在构建背包后生成一个表,只包含它的值?例如:Lua 从非数值表的值创建数值表,lua,lua-table,Lua,Lua Table,正如你们所看到的,我不能称之为背包[1],因为它不是一个数字表,我如何在构建背包后生成一个表,只包含它的值?例如: Backpack = {Potion = 'backpack',Stack = 'bag',Loot = 'derp', Gold = 'random'} Backpack[1] ~= 'backpack' -- nope 这看起来很简单,但我找不到办法 我之所以需要它,是因为我将在要构造的表上运行一个数字循环[I]要迭代表中的所有键值对,请使用以下函数: Table_to_b
Backpack = {Potion = 'backpack',Stack = 'bag',Loot = 'derp', Gold = 'random'}
Backpack[1] ~= 'backpack' -- nope
这看起来很简单,但我找不到办法
我之所以需要它,是因为我将在要构造的表上运行一个数字循环[I]要迭代表中的所有键值对,请使用以下函数:
Table_to_be_Constructed = {Value of Potion,Value of Stack,Value of Loot,Value of Gold} -- this is what i need
注:未定义迭代顺序。因此,您可能需要对表进行排序,以便在之后构建
按照惯例,变量名\uuu
用于表示不使用其值的变量。因此,由于您只需要表中的值,因此可以用以下方式编写循环:
local Table_to_be_Constructed = {}
for key, value in pairs(Backpack) do
table.insert(Table_to_be_Constructed, value)
end
有关最新问题
Backpack
没有顺序(构造器语句中的顺序不保留)。如果在构造表_to_be_Constructed
时要将顺序添加到其值中,可以直接这样做:
for _, value in pairs(Backpack) do
local Table_to_be_Constructed = {
Backpack.Potion,
Backpack.Stack,
Backpack.Loot,
Backpack.Gold
}
或者间接地像这样:
for _, value in pairs(Backpack) do
local Table_to_be_Constructed = {
Backpack.Potion,
Backpack.Stack,
Backpack.Loot,
Backpack.Gold
}
是的,我以前也试过,但是如果表的构建不是按顺序进行的,它也不会有帮助,我如何根据背包对其进行排序?您如何在背包中看到顺序或顺序?(把这个和上面的信息添加到你的问题中。)对不起,我应该说背包中的值不是按字母顺序排列的,你可以像Backpack.Potion~='a'
这样测试。这样会更好吗?