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

Display a .txt file in alphabetical order in python

我有这个 .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 的新手,所以请不要使用过于复杂/抽象的代码)。谢谢!

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

或者:

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

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

可能不那么明显的技巧是文件对象 returns (yields) 迭代时的行。您可以执行 for line in f:list(f) 从文件中读取所有行,其中 f 是一个文件对象。