擅长:python、mysql、java
<p>似乎您对控件如何从函数返回以及如何返回值有误解。当前的问题与while循环无关,而与处理函数返回的方式无关。你知道吗</p>
<p>您应该了解,可以有多个返回路径,但是对于任何特定的执行,<strong>只执行一个返回,序列路径中的任何后续返回都将被忽略。你知道吗</p>
<p>此外,还需要一种捕获返回值的方法,它不能自动污染全局命名空间</p>
<p>所以要总结和解决你的问题,一个可能的出路是</p>
<pre><code>def roll(m):
rolls = []
tot = 0
while tot < m:
r = rdm.randint(1,6)
tot += r
rolls.append(r)
return tot, rolls, r
tot, rolls, r = roll(m)
print "The number of rolls was", len(rolls)
print "The total is", tot
</code></pre>