Python 用平面元组字典中的诅咒生成网格

Python 用平面元组字典中的诅咒生成网格,python,Python,好吧,我一直在想最好的方法来做这一点有一段时间,但它只是不来找我。我有一本网格上有点的字典 {(0,0):...(0,1):...} 我想在诅咒中使用addch可视化此词典 要在屏幕上打印的词典中的点必须按如下方式转换: x, y 0,0 => 1,1 1,0 => 3,1 2,0 => 5,1 3,0 => 7,1 0,0 => 1,1 0,1 => 1,3 0,2 => 1,5 0,3 => 1,7 我想不出一个优雅的方法来把(0,3)

好吧,我一直在想最好的方法来做这一点有一段时间,但它只是不来找我。我有一本网格上有点的字典

{(0,0):...(0,1):...}
我想在
诅咒
中使用
addch
可视化此词典

要在屏幕上打印的词典中的点必须按如下方式转换:

x, y
0,0 => 1,1
1,0 => 3,1
2,0 => 5,1
3,0 => 7,1

0,0 => 1,1
0,1 => 1,3
0,2 => 1,5
0,3 => 1,7


我想不出一个优雅的方法来把
(0,3)
变成
(1,7)
(屏幕网格上的中心)

看起来转换只是

x1 = 2 * x_0 + 1
y1 = 2 * y_0 + 1
因此,如果要以这种方式转换词典,可以执行以下操作:

new_dict = {(2 * x + 1, 2 * y + 1): v for (x, y), v in d.items()}
例如:

d = {(1, 3): 12, (7, 1): 90, (3, 1): 8, (1, 5): 15, (5, 1): 40, (1, 1): 1}
new_dict = {(2 * x + 1, 2 * y + 1): v for (x, y), v in d.items()}
print new_dict
# {(1, 3): 12, (7, 1): 90, (3, 1): 8, (1, 5): 15, (5, 1): 40, (1, 1): 1}

你能把那个网格所代表的实际字典贴出来吗?@DavidRobinson当然可以,但我不确定它会有什么帮助<代码>{(0,0):[True,True,True,True],(0,1):[True,True,True]}这是一个迷宫,基本上,
True
代表墙是否存在。