NetworkX图节点验证:测试代码报错与'user'节点存在性疑问
验证图中是否存在'user'节点的问题
最初的测试代码及错误
我最初编写的测试代码如下:
import graph_creator def test_user(): assert "user" in graph
运行后出现错误:
'user' != <networkx.classes.multidigraph.MultiDiGraph object at 0x000002164D4567A0>
Expected :<networkx.classes.multidigraph.MultiDiGraph object at 0x000002164D4567A0>
Actual :'user'
def test_user(): assert 'user' in graph
E AssertionError: assert 'user' in <networkx.classes.multidigraph.MultiDiGraph object at 0x000002164D4567A0>
修改后的测试代码
之后我改用以下代码测试,运行正常并返回"true":
import graph_creator if "user" in graph_creater.graph: print("true")
结论
是的,这说明'user'确实存在于你创建的图中。你最初的测试代码报错,是因为代码里的graph变量没有正确指向graph_creator模块中定义的图对象——要么是未从模块中正确导入graph,要么是当前作用域内的graph是另一个无关对象,导致判断逻辑出错。而修改后的代码直接通过graph_creator.graph访问到了目标图对象,返回true就代表该节点存在于图中。
内容的提问来源于stack exchange,提问作者Piscator
相关产品推荐
相关产品推荐

