下面是我的字典
path_map = defaultdict(lambda:defaultdict(lambda:(None,None)))
我在下面打印了这个字典(我只是为 3 个键粘贴 path_map:00-00-00-00-00-01 到 00-00-00-00-00-03)
for key in path_map:
print key,path_map[key]
00-00-00-00-00-01 defaultdict(<function <lambda> at 0x7f9062a17050>, {00-00-00-00-00-05: (1, None), 00-00-00-00-00-03: (2, 00-00-00-00-00-02), 00-00-00-00-00-02: (1, None), 00-00-00-00-00-01: (0, None), 00-00-00-00-00-04: (2, 00-00-00-00-00-02), '00-00-00-00-00-03': (None, None)})
00-00-00-00-00-02 defaultdict(<function <lambda> at 0x7f9062a170c8>, {00-00-00-00-00-04: (1, None), 00-00-00-00-00-02: (0, None), 00-00-00-00-00-03: (1, None), 00-00-00-00-00-01: (1, None), 00-00-00-00-00-05: (1, None)})
00-00-00-00-00-03 defaultdict(<function <lambda> at 0x7f9062a17140>, {00-00-00-00-00-03: (0, None), 00-00-00-00-00-05: (2, 00-00-00-00-00-02), 00-00-00-00-00-04: (2, 00-00-00-00-00-02), 00-00-00-00-00-02: (1, None), 00-00-00-00-00-01: (2, 00-00-00-00-00-02)})
但是当我传递这些输入(src:00-00-00-00-00-01,dst:00-00-00-00-00-03)时,我没有得到任何价值:
print path_map[src][dst][0]
print path_map[src][dst][1]
print src
print dst
输出 :
None
None
00-00-00-00-00-01
00-00-00-00-00-03
有人可以解释为什么它会这样工作吗?
请注意,我从 mysql 表中获取 src 和 dst 的值,这些表以 VARCHAR 形式存储。