2015-06-02 55 views
0

我有各種鍵(套)的defaultdict(套),的值(組元組)等完全重新映射字典,集合,列表等中的鍵和值?

也有我的各種鍵(元組)的一個詞典,和值(字符串)。

例如,也許一切都是日文,日文鍵和值。

我有日語 - >英語的映射,並希望將我的對象中的所有內容更新爲新的鍵和值。整體結構是一樣的,只是關鍵/值不同而得名。

我可以通過遍歷所有內容並彈出/替換手動執行此操作,但這很無聊。我很好奇,如果有更多的Pythonic方式。

回答

0

假設您有一個名爲convert_keys或類似的函數,您可以傳遞一個日文鍵並獲得相應的英文鍵,以及一個convert_values函數,但它們的值相同,但可以嘗試如下所示:

englishDict = dict(map(lambda x: (convert_keys(x[0]),convert_values(x[1])),japaneseDict.items())) 

它本質上仍然是相同的算法啪/更換但map每個鍵/條目對操作則您可以將它歸結爲一條線。