擅长:python、mysql、java
<p>您可以按照以下思路做一些事情:</p>
<pre><code># if used repeatedly, it's better to declare outside of function and reuse
# grades = list(zip('ABCD', (.9, .8, .7, .6)))
def grade(score):
grades = zip('ABCD', (.9, .8, .7, .6))
return next((grade for grade, limit in grades if score >= limit), 'F')
>>> grade(1)
'A'
>>> grade(0.85)
'B'
>>> grade(0.55)
'F'
</code></pre>
<p>这将使用<a href="https://docs.python.org/3/library/functions.html#next" rel="noreferrer">^{<cd1>}</a>和生成器上的默认参数,覆盖由<a href="https://docs.python.org/3/library/functions.html#zip" rel="noreferrer">^{<cd2>}</a>创建的分数等级对。它实际上与循环方法完全相同</p>