擅长:python、mysql、java
<p>Python列表已经提供了一个<a href="https://docs.python.org/dev/library/stdtypes.html#list.sort" rel="nofollow">^{<cd1>}</a>方法。您可以简单地调用它,指定一个<code>key</code>参数来确定如何排序。在</p>
<pre><code>def print_list(table):
for line in table:
print(str(line[0]) + " kms, $" + str(line[1]))
with open(input("Enter file name: ")) as f:
table = []
for line in f:
line = line.rstrip().split(",")
line[0] = int(line[0])
line[1] = float(line[1])
table.append(line)
table.sort(key=lambda line: line[1])
print_list(table)
</code></pre>
<p>请注意,我对您的程序做了一些额外的更改,即根据<a href="https://www.python.org/dev/peps/pep-0008/#function-names" rel="nofollow">PEP8</a>重命名PrintList,并使用<a href="https://docs.python.org/dev/reference/compound_stmts.html#the-with-statement" rel="nofollow">^{<cd3>} statement</a>使文件自动关闭。在</p>
<p>如果坚持使用选择排序(这将比Python的默认排序更糟糕),请在实现<a href="https://docs.python.org/dev/library/functions.html#sorted" rel="nofollow">^{<cd4>}</a>接口的helper函数中实现它。在</p>