擅长:python、mysql、java
<p>我认为问题在于:</p>
<pre><code>gg,prog = findResult(s[i:len(s)], goal / num,prog+"*"+str(num)) or findResult(s[i:len(s)], goal - num,prog+"+"+str(num))
</code></pre>
<p>这里,对元组使用<code>or</code>运算符。然而,在布尔上下文中,非空元组的计算结果总是<code>True</code>。你应该这样写:</p>
<pre><code>gg,prog = findResult(s[i:len(s)], goal / num,prog+"*"+str(num))
if gg == False:
gg,prog = findResult(s[i:len(s)], goal - num,prog+"+"+str(num))
</code></pre>