如何按字母顺序对CSV文件排序?

2024-10-01 00:16:55 发布

您现在位置:Python中文网/ 问答频道 /正文

这是我的代码,它将数据添加到名为学生成绩.csv在

myfile = open("studentScores.csv", "a+")

newRecord = Score, Name, Gender, FormGroup, Percentage

myfile.write(str(newRecord))

myfile.write("\n")

myfile.close()

作为我任务的一部分,我需要按字母顺序排列CSV中的数据,我已经搜索了,并搜索了一个解决方案,但我找不到适合我的解决方案。我对Python还不熟悉,所以最简单的解决方案将受到欢迎。在


Tags: csv数据代码nameopen解决方案gendermyfile
1条回答
网友
1楼 · 发布于 2024-10-01 00:16:55
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文件中的标题行来向列添加名称,请查看^{} and ^{},这将允许您按名称而不是数字(例如在排序步骤中)来处理列。在

相关问题 更多 >