擅长:python、mysql、java
<p>看看:</p>
<pre><code>if int(figure) > 18 and d == '1-18' or '1 - 18' or '1- 18' or '1 -18':
</code></pre>
<p>这里有几个语句的结果总是为True;<code>'1 - 18' or '1- 18' or '1 -18'</code>中的每一个都是一个非空字符串。不管<code>int(figure)</code>或<code>d</code>有什么值。这意味着python将该行视为<code>if something or True</code>的等价物。在</p>
<p>您要做的是使用<code>in</code>运算符来测试<code>d</code>是否是选项列表的一部分:</p>
^{pr2}$
<p>同样的问题也适用于您的<code>elif</code>语句。在</p>