這是這是造成我的程序崩潰小代碼段由於無限循環奇怪而回路使無限循環
while not stack.is_empty():
if operators[stack.peek()] >= operators[character]:
result += stack.pop()
其中堆棧是一個堆棧的對象和操作員是一個字典。 下面的代碼但不會導致無限循環
while not stack.is_empty() and operators[stack.peek()] >= operators[character]:
result += stack.pop()
我的問題是:是不是這些代碼段基本上是一回事嗎?爲什麼一個造成一個無限循環而另一個不是?
感謝
......這意味着您可以通過在第一個中添加一個「else:break」來使它們等價。 – xtofl
哦,哇,我不能相信我沒有看到,謝謝 – Jacklin213