擅长:python、mysql、java
<p>不要使用<code>eval()</code></p>
<p>而不是这样:</p>
<pre><code>scoresList = []
for i in content:
name, score = i.split(" ")
scoresList.append(eval(score))
</code></pre>
<p>执行以下操作:</p>
<pre><code>content = {name:int(score) for name, score in (item.split() for item in content)}
</code></pre>
<p>这将创建以下形式的词典:</p>
<pre><code>{'Mary': 200, 'Alex': 300, 'John': 500}
</code></pre>
<p>现在可以按排序方式显示:</p>
<pre><code>for item in sorted(content, key=content.get):
print(item, content.get(item))
</code></pre>
<p>从最低到最高打印姓名和分数:</p>
<pre><code>Mary 200
Alex 300
John 500
</code></pre>
<p>如果要按降序列出,请为排序函数指定<code>sorted(content, key=content.get, reverse=True)</code></p>