错误如下:
dhcp-169-233-163-147:Desktop juliushamilton$ python3 printTrie.py
File "printTrie.py", line 16
matchbuild(daughter, next(base))
^
TabError: inconsistent use of tabs and spaces in indentation
我的代码是:
def matchbuild(node, base):
match = False
if base == False:
return
for daughter in node.daughters:
if base == node.edge:
match = True
matchbuild(daughter, next(base))
if match == False:
trie.append(Node(node, [], base))
matchbuild(node, base)
我想把for / if部分作为单行,但执行也引发了错误。 间距有什么问题?
答案 0 :(得分:0)
问题是在堆栈跟踪指示时,您在其他位置使用制表符或空格进行缩进,但是在行中 -
matchbuild(daughter, next(base))
你正在使用相反的东西(就像你可能使用空格来指示其他行中的缩进,但是你使用制表符来指示这行的缩进。在Python 3.x中,你不能混合制表符和空格,你必须在整个脚本中使用一致的东西。我相信建议使用4个空格来表示缩进级别。