【发布时间】:2018-04-30 23:42:20
【问题描述】:
我有一个字典,其中存储了一个元组 (x,y) 作为键
但是,当我放置以下条件时,即使元组已经在字典中,它也会返回 true。
if (virtual_box_i, virtual_box_j) not in self.visitid_indices:
break
我确信元组在那里,因为我可以在 self.visitid_indices 中看到它,如下调试:
我在这里做错了什么?
【问题讨论】:
-
不确定图片是关于什么的,但很难阅读,强烈建议不要使用包含代码或(文本)输出的图片,因为屏幕阅读器无法搜索或阅读这些图片。
-
你怎么知道条件被评估为“真”?
-
@mkrieger1 因为它进入了 if 条件
-
@Evert 你是对的。在将索引转换为 python int 之后,一切正常。奇怪的是 NumPy int 类型在这种情况下不起作用
-
你能打印出
(np.int64(2), np.int64(7)) in {(2,7)}吗?如果为 False,请列出您的平台、Python 版本和 numpy 版本,以及您如何安装它们。因为如果你有一个非常旧的 numpy 版本,或者一个损坏的 numpy 版本,你可能想要修复它,而不是解决这个特定的症状。
标签: python dictionary