擅长:python、mysql、java
<p>Python解释while循环的条件如下:</p>
<pre><code>while (ANS != "A") or ("a") or ("B") or ("b"):
</code></pre>
<p>而且,它的计算结果总是<code>True</code>,因为非空字符串的计算结果总是<code>True</code>。</p>
<hr/>
<p>若要解决此问题,可以改用<a href="http://docs.python.org/2/reference/expressions.html#not-in" rel="nofollow">^{<cd3>}</a>:</p>
^{pr2}$
<p><code>not in</code>将测试在元组<code>("A", "a", "B", "b")</code>中是否可以找到{<cd5>}。</p>
<hr/>
<p>您还可以在这里使用<a href="http://docs.python.org/2.7/library/stdtypes.html#str.lower" rel="nofollow">^{<cd7>}</a>来缩短元组的长度:</p>
<pre><code>while ANS.lower() not in ("a", "b"):
</code></pre>