在python中按字母顺序显示.txt文件

时间:2015-05-11 10:52:05

标签: python alphabetical alphabetical-sort

我有这个.txt文件

Sam : 6
Peter : 9
Hubert: 4
Daniel : 2
Richard : 1
David : 8
Jesus : 10

我想要做的是(在我的程序中)打印出这个.txt文件,但按字母顺序排列。所以我的输出看起来像这样:

Daniel : 2
David : 8
Hubert: 4
Jesus : 10
Peter : 9
Richard : 1
Sam : 6

我怎么能在python中这样做?你能告诉我怎么样吗?任何答案和反馈都是非常受欢迎的,如果任何可能的解决方案尽可能简单和基本,那就太棒了(我是python的新手,所以请不要过于复杂/抽象的代码)。谢谢!

1 个答案:

答案 0 :(得分:2)

print(''.join(sorted(open('file.txt'))), end='')

可替换地:

for line in sorted(open('file.txt')):
    print(line, end='')

为什么end=''?因为line已经包含换行符,所以我们不希望print打印另一个。

可能不那么明显的技巧是文件对象在迭代时返回(产生)行。您可以执行for line in f:list(f)来读取f是文件对象的文件中的所有行。