<pre><code>if __name__ == '__main__':
val='n'
while val != 'y' or val != 'Y':
val = input("are we done ? [Y/n]: ")
exit()
</code></pre>
<blockquote>
<p>and got quite perplexed as the result is</p>
</blockquote>
<pre><code>are we done ? [Y/n]: y
are we done ? [Y/n]: y
are we done ? [Y/n]: Y
are we done ? [Y/n]: Y
are we done ? [Y/n]: yes
are we done ? [Y/n]:
</code></pre>
<p>我想也许<a href="https://stackoverflow.com/questions/22362165">related question will help</a>但还是不高兴。
有人知道为什么我的第一次审判失败了吗</p>
<p>您需要将<code>or</code>替换为<code>and</code></p>
<p>这是因为您希望循环仅在两个条件都为真时停止运行</p>
<p>最终代码:-</p>
<pre><code>if __name__ == '__main__':
val='n'
while val != 'y' and val != 'Y':
val = input("are we done ? [Y/n]: ")
exit()
</code></pre>