擅长:python、mysql、java
<p>代码的问题在于以下行:</p>
<pre><code>if choice == "option 1" or "1":
</code></pre>
<p>这里您并不是在看<code>choice</code>是“option 1”<em>还是</em>“1”,而是如果它等于“option 1”,或者字符串值“1”<strong>,它的计算结果是</strong><code>true</code>,因此,您总是得到第一个循环</p>
<p>它应该是这样的:</p>
<pre><code>if ((choice == "option 1") or (choice == "1")):
</code></pre>
<p>elif的行也是如此:</p>
<pre><code>elif ((choice == "option 2") or (choice == "2")):
</code></pre>
<p>如果运行以下代码:</p>
<pre><code>if "1":
print("true")
else:
print("false")
</code></pre>
<p>您将看到输出为<code>true</code></p>