在我的程序中,我有一个文本文件,我从中读取和写入.但是,我想以对齐和排序的方式显示文本文件的内容.目前内容如下:
Emily, 6
Sarah, 4
Jess, 7
Run Code Online (Sandbox Code Playgroud)
这是我的代码,其中读取和打印的文本文件:
elif userCommand == 'V':
print "High Scores:"
scoresFile = open("scores1.txt", 'r')
scores = scoresFile.read().split("\n")
for score in scores:
print score
scoresFile.close()
Run Code Online (Sandbox Code Playgroud)
我是否必须将此信息转换为列表才能够执行此操作?如果是这样,我该怎么做呢?
在写入文件时,我在末尾添加了一个'\n'字符,因为每条记录都应该打印在一个新行上.
谢谢
你可以使用csv模块,然后可以sorted用来排序.
我们说,得分1.txt有以下内容
Richard,100
Michael,200
Ricky,150
Chaung,100
Run Code Online (Sandbox Code Playgroud)
测试
import csv
reader=csv.reader(open("scores1.txt"),dialect='excel')
items=sorted(reader)
for x in items:
print x[0],x[1]
...
Emily 6
Jess 7
Sarah 4
Run Code Online (Sandbox Code Playgroud)