我有一个dict如下:
v0 = {(7, 3): '7', (4, 7): '*', (1, 3): '*', (6, 6): '*', (3, 0):
'2', (2, 8): '*', (8, 0): '3', (7, 8): '*', (5, 4): '*', (2, 1):
'*', (5, 6): '4', (6, 2): '*', (1, 6): '*', (3, 7): '*', (5, 1):
'*', (0, 3): '4', (8, 5): '2', (2, 5): '*', (7, 2): '*', (4, 0):
'*', (1, 2): '2', (3, 8): '6', (6, 7): '*', (3, 3): '1', (0, 6):
'*', (8, 1): '*', (7, 6): '5', (4, 4): '4', (6, 3): '*', (1, 5):
'1', (5, 8): '3', (5, 0): '6', (2, 2): '*', (8, 6): '*', (3, 5):
'*', (4, 1): '*', (1, 1): '*', (6, 4): '*', (3, 2): '7', (0, 0):
'*', (8, 2): '*', (2, 7): '4', (7, 1): '2', (4, 5): '*', (0, 4):
'2', (6, 0): '*', (1, 4): '7', (7, 7): '*', (5, 5): '7', (7, 5):
'*', (2, 3): '*', (0, 7): '*', (8, 7): '7', (6, 8): '*', (4, 2):
'*', (1, 0): '*', (0, 8): '5', (5, 7): '*', (6, 5): '*', (5, 3):
'*', (0, 1): '1', (8, 3): '*', (7, 0): '1', (4, 6): '*', (3, 6):
'*', (3, 4): '*', (6, 1): '7', (3, 1): '*', (2, 6): '*', (2, 4):
'*', (7, 4): '3', (2, 0): '*', (1, 8): '9', (8, 8): '*', (4, 3):
'*', (1, 7): '3', (0, 5): '*', (4, 8): '*', (5, 2): '*', (0, 2):
'*', (8, 4): '8'}
有没有办法可以检索我感兴趣的任何特定密钥?
比如说,我会给输入7& 0到我的功能,它应该得到我的结果:
1
或者如果我给8& 4它应该让我8。
我正在努力学习Python。我非常感谢能帮助我解决问题的任何事情。
感谢。
答案 0 :(得分:4)
你试过这个吗?
>>> v0[(7,3)]
'7'
>>> v0[(7,0)]
'1'
或在函数中:
>>> def retr(x, y):
... return v0[(x, y)]
...
>>> retr(8,4)
'8'
编辑:
从技术上讲,你没有有来使用大括号内的括号,但确实更清楚dictionary键实际上是一个tuple。
>>> v0[7,0]
'1'
答案 1 :(得分:3)
是的,当然,这就是字典!如果您的词典被称为v0
,那么您只需使用v0[(7,0)]
或v0[(8,4)]
在这种情况下,(7,0)和(8,4)是“键”以及它们映射到的键,例如,图1和8分别是字典的“值”。当您想要通过键检索值时,字典对于存储值很有用,就像您现在正在做的那样。
答案 2 :(得分:1)
字典中最棒的是你总是使用键值对,即(7,0)是你的键,1是与之对应的值。因此,您可以通过调用
来访问该值value = v0[key]
,对于您的示例
value = v0[(7, 0)]
并且该操作后值将为1。
有关字典的详细信息,请参阅here。
答案 3 :(得分:1)
它们看起来像我的坐标。如果您尝试表示矩阵,请使用多维数组而不是字典。它更易于使用,也是一种更快的解决方案。
对于多维数组,请点击以下链接:http://www.linuxtopia.org/online_books/programming_books/python_programming/python_ch20s05.html