擅长:python、mysql、java
<p>最重要的是,您只检查“个”位数是0、1还是2——您漏掉了8和9。在</p>
<p>作为样式说明,不要检查布尔表达式,然后硬编码刚刚找到的结果。您的函数,如目前所写,可简化为:</p>
<pre><code>def nearten(num):
return num%10 <= 2
</code></pre>
<p>你看到了吗?首先,<strong>elif</strong>检查不会给您提供任何新信息:您已经知道,当您通过<strong>if</strong>条件时,结果必须是2。在</p>
<p>那么,你的陈述是</p>
^{pr2}$
<p>那是多余的。程序中有一个True/False值——只需返回该值,而不是使用常量。在</p>
<hr/>
<p>修复。。。在</p>
<p>我把这个作为练习留给学生:“within”2意味着你必须检查两边,所以你必须选择一位数是8或9的情况。你能写出这样的表达式吗?在</p>