如何用Python打印列表,同时按字母顺序排序?

如何用Python打印列表,同时按字母顺序排序?,python,list,Python,List,我似乎无法按字母顺序打印名为abcd.txt的文件中的所有行 abcd = open("abcd.txt", "r") lines = abcd.readlines() lines.sort() print(abcd.read()) 它不会按字母顺序对文件中的字母进行排序,每当我运行shell时,它只会显示一个空行。 随附的文本文件如下: a 伊尔夫 fr b tt bgt 电子束 全球环境基金 df fw 弗雷 r g 呃 bgt 乙二醇 rt g 通用电气 e q e et 我 uklum

我似乎无法按字母顺序打印名为abcd.txt的文件中的所有行

abcd = open("abcd.txt", "r")
lines = abcd.readlines()
lines.sort()
print(abcd.read())
它不会按字母顺序对文件中的字母进行排序,每当我运行shell时,它只会显示一个空行。 随附的文本文件如下:

a

伊尔夫

fr

b

tt

bgt

电子束

全球环境基金

df

fw

弗雷

r

g

bgt

乙二醇

rt

g

通用电气

e

q

e

et

uklumh

ngdf

gdv


我该如何打印这些行?您能看到它不排序文件的原因吗?

您正在排序行,而不是文件。因此,请检查并使用已排序的行:

abcd = open("abcd.txt", "r")
lines = abcd.readlines()
lines.sort()
print('\n'.join(lines))

这段代码不会给出那个输出。然而,很明显,您已经对
列表进行了排序,而不是文件本身;如果您再次读取该文件,您将获得原始顺序。我不懂Python,但您似乎打印了错误的变量。也许
print(lines)
会有用吗?真的有用,谢谢@antti29Thank,很好用