Кажется, он возвращает None, поскольку в вашем коде нет return ...
. Я бы удостоверился, что вы явным образом вернетесь туда, куда вам нужно. Например, два места, в которые вы можете добавить оператор возврата:
return dfs(nei,c^1)
в вашей функции dfs()
, а также:
return dfs(node)
в вашей функции possibleBipartition()
.
Обратите внимание, что вам нужно явно указать возврат в Python, если он не похож на такие языки, как Racket и Haskell.