2013-06-12 51 views
2

我想知道我是否試圖在lua中實現的功能是可能的。lua中哈希中的多個哈希值

我有一個叫做Creatures的全局散列。生物包含稱爲哺乳動物,兩棲動物,鳥類,昆蟲的亞哈希。

哺乳動物有稱爲鯨魚,大象的亞哈希。兩棲動物有稱爲青蛙,幼蟲的子哈希。鳥類擁有稱爲鷹,長尾小鸚鵡的子哈希。昆蟲有稱爲蜻蜓,蚊子的子哈希。

我正在從一個文本文件計算所有這些生物的頻率。例如,如果我計算文本文件中的鷹的數量爲100,我應該將該100存儲在

Creatures[Birds[Eagle]] = 100 

lua中有可能嗎?如何做呢?我對lua很新,請大家幫忙,非常感謝。謝謝!

+0

這是爲什麼用wireshark標記的? – greatwolf

+0

1)他描述的是一個例子,他正在開發一個Wireshark擴展,或者2)某人混淆地標記它,或者3)他希望得到那些尋找「wireshark」標記但不是「lua」標記的人的注意,標籤希望他們可能熟悉Lua。無論如何,Wireshark沒有明顯的方式與它相關(所描述的問題是通用的),所以標籤不應該在那裏。我已將其刪除。 – 2013-06-13 03:04:16

+0

1)和3)是原因。抱歉! –

回答

3

您提供的代碼是合法的Lua,但可能不是您想要的,這可能是Creatures.Birds.Eagle = 100或​​或這些的一些變體。

2

也許這樣你的生物表定義:

Creatures = { 
    ["mammals"] = { 
     ["whales"] = 10, 
     ["elephants"] = 10, 
    } 
    ["amphibians"] = { 
     ["frogs"] = 10, 
     ["larvae"] = 10, 
    } 
    ["birds"] = { 
     ["Eagle"] = 10, 
     ["parakeet"] = 10, 
    } 
    ["insects"] = { 
     ["dragonfly"] = 10, 
     ["mosquito"] = 10, 
    } 
} 

,那麼你可能需要定義一個函數來初始化表:

function InitCreature()  XXX end 

在此功能,您可以讀取文本文件,並分配桌子這樣的東西。