首页 > 解决方案 > 遍历字典前辈

问题描述

没有库或任何导入:

给定一本字典

a = {(9,9): (1,0), (9,8): (1,1), (1, 0): (9, 8), (9,8): (1,1), (1, 1): (0,0)}

我希望输出为 [(0,0), (1,1), (9,8), (1,0), (9,9)]

无需硬编码。所以它可能是 {(nx, ny): ... , .... , : (0,0)}。基本上它从 (0,0) 开始,将其附加到列表中,然后将键附加到列表中,依此类推。

标签: pythondictionary

解决方案


根据这条线:

基本上它从 (0,0) 开始将其附加到列表中,然后将键附加到该列表中,依此类推

采用:

a = {(9,9): (1,0), (9,8): (1,1), (1, 0): (9, 8), (9,8): (1,1), (1, 1): (0,0)}
[item for sublist in [[v, k] for k, v in a.items()][::-1] for item in sublist]

输出

[(0, 0), (1, 1), (9, 8), (1, 0), (1, 1), (9, 8), (1, 0), (9, 9)]

推荐阅读