<p>您可以很好地使用pythons迭代器和列表函数(<code>sum</code>、<code>len</code>)以及-理解。你知道吗</p>
<p>像这样:</p>
<pre><code>def prompt():
return input('Enter a time (negative for F, "" to quit): ')
data = [float(datum) for datum in iter(prompt, '')]
females = [-datum for datum in data if datum < 0.]
males = [datum for datum in data if datum > 0.]
print ('Males average: {}'.format(sum(males) / len(males)))
print ('Females average: {}'.format(sum(females) / len(females)))
print ('Fast males: {}'.format(sum(1 for male in males if male < 15.)))
</code></pre>
<hr/>
<p>下面是一个交互式会话示例:</p>
<pre><code>Enter a time (negative for F, "" to quit): 0
Enter a time (negative for F, "" to quit): 0
Enter a time (negative for F, "" to quit): 12
Enter a time (negative for F, "" to quit): 14
Enter a time (negative for F, "" to quit): 18
Enter a time (negative for F, "" to quit): -10
Enter a time (negative for F, "" to quit): -11
Enter a time (negative for F, "" to quit):
Males average: 14.666666666666666
Females average: 10.5
Fast males: 2
</code></pre>
<hr/>
<p>要进一步分类,您可以执行以下操作:</p>
<pre><code>fastMales = [male for male in males if male < 15.]
fastFemales = [female for female in females if female < 19.]
</code></pre>