簡體   English   中英

枚舉lua / torch中的函數

[英]Enumerate function in lua/torch

在python中,我們for i, _ in enumerate(wx):使用for i, _ in enumerate(wx):其中wx是行矩陣或表。 我們如何在lua / torch中使用它。 任何枚舉函數?

在Lua,你有pairsipairs

 pairs (t) 

如果t有一個metamethod __pairs ,則以t為參數調用它,並返回調用的前三個結果。

否則,返回三個值: next函數,表tnil ,以便構造

 for k,v in pairs(t) do body end 

將迭代表t所有鍵值對。

您也可以使用next來創建自己的自定義枚舉:

 next (table [, index]) 

允許程序遍歷表的所有字段。 它的第一個參數是一個表,它的第二個參數是該表中的索引。 next返回表的下一個索引及其關聯值。 當使用nil作為其第二個參數調用時, next返回初始索引及其關聯值。 當使用最后一個索引調用時,或者在空表中使用nil時, next返回nil 如果第二個參數不存在,則將其解釋為nil。 特別是,您可以使用next(t)來檢查表是否為空。

未指定索引的枚舉順序, 即使對於數字索引也是如此 (要遍歷表中數字順序, 使用的數值。)

如果在遍歷期間將任何值分配給表中不存在的字段,則next的行為是未定義的。 但是,您可以修改現有字段。 特別是,您可以清除現有字段。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM