这是我的代码,它将数据添加到称为studentScores.csv
的CSV文件中myfile = open("studentScores.csv", "a+")
newRecord = Score, Name, Gender, FormGroup, Percentage
myfile.write(str(newRecord))
myfile.write("\n")
myfile.close()
作为我的任务的一部分,我需要将CSV中的数据字母化,我搜索并搜索解决方案,但我无法找到适合我的解决方案。我对Python很陌生,所以最简单的解决方案将不胜感激。
答案 0 :(得分:1)
import csv
from operator import itemgetter
with open('studentScores.csv', 'r') as f:
data = [line for line in csv.reader(f)]
newRecord = [Score, Name, Gender, FormGroup, Percentage]
data.append(newRecord)
data.sort(key=itemgetter(1)) # 1 being the column number
with open('studentScores.csv', 'w') as f:
csv.writer(f).writerows(data)
首先,它使用csv
模块中的函数来正确解析和创建CSV语法。其次,它将所有现有条目读入data
,附加新记录,对所有记录进行排序,然后将它们转储回文件。
如果您使用CSV文件中的标题行向列中添加名称,请查看DictReader
and DictWriter
,这样您就可以按名称处理列,而不是数字(例如,在排序步骤中)