給定一個列表n
長,如['animal', 'dog', 'golden retriever']
或['food', 'dinner', 'pasta', 'white sauce', 'fetucci alfredo']
,我需要遍歷數組並獲取當前索引,加上每個以前的索引。Python:循環遍歷一個列表使用所有索引與每個索引
是否有過什麼好辦法循環,做到這一點,使得任意長度的列表仍然可以變成:
stuff['food']
stuff['food']['dinner']
stuff['food']['dinner']['pasta']
stuff['food']['dinner']['pasta']['white sauce']
stuff['food']['dinner']['pasta']['white sauce']['fetucci alfredo']
我越來越深的移動到一個對象,但每個值可能可能還不存在,所以我需要在每個級別停下來。即stuff['food']['dinner']
可能存在,但我可能仍然需要添加意大利麪到晚餐,白醬到意大利麪等。
我是否正確地假設您想要以特定的嚴格等級方式關聯數據?如果是這樣,僅僅依次引用列表元素可能並不理想;字典數據類型可能是你需要的。這將允許您將嵌套字典關聯:例如,將意大利麪食品列表作爲與食品類別關聯的一個項目。 – abought
是的,非常正確。由於觸發此代碼的API如何定義結構,我必須使用列表。我還必須在訪問器中定義整個層次結構;我寫的以前的版本確實只使用了父母/孩子(例如,意大利麪食列表作爲與食品類別相關的一個項目),但如果您有多個相同項目名稱/不同項目對父/子:例如[人,史密斯,史蒂夫,艾倫]和[姓名,S名,史密斯,史蒂夫] – BrianFreud