重复'错误'输出

时间:2017-03-22 02:30:08

标签: python graph dfs

我正在尝试实现一个dfs来查找字符串图中的循环。例如图表:

walkways_info = """\
U 3
0 1
1 2
2 0
"""

会返回True。我目前遇到的问题是我的if语句:

if current_vertex in visited or int(graph[i].split()[1]) in visited:

输出False但我不希望它在此阶段输出任何内容。

更新了代码Here

我很感激一些帮助。

1 个答案:

答案 0 :(得分:0)

我相信您的操作顺序错误,in==播放效果不佳。

current_vertex in visited == True评估为(current_vertex in (visited == True))

示例:

In [1]: x = [0,1,2]

In [2]: y = 1

In [3]: y in x == True
Out[3]: False

In [3]: y in x
Out[3]: True

因此,如果您放弃== True它应该可以正常工作。

if current_vertex in visited or int(graph[i].split()[1]) in visited: