比较 CSV 值

我不是编码员,但我一直在尝试比较 csv 原始值并将较大的值与第一个原始值和第一个原始值切换到第二个原始值。例如:


NumberA, NumberB

10       22

33       44

776.4    779.7

78       77

代码:


if NumberA[0] < NumberB[0]: 

    NumberA[10] = NumberB[0]

    NumberB[10] = NumberA[0] 

我不确定如何为此编写循环。此外,最后,我想用新的更改值生成一个新的 CSV 文件。请帮助解决这个问题。


红颜莎娜
浏览 160回答 1
1回答

心有法竹

有很多方法可以做到这一点,但从csv 库文档中的一些示例开始,这些示例展示了如何读取csv文件和写入新csv文件。import csvheader = []rows = []sortedrows = []with open('data.csv', 'r') as f:&nbsp; &nbsp; reader = csv.reader(f)&nbsp; &nbsp; # grab only the first row as the header/column labels&nbsp; &nbsp; header = next(reader, None)&nbsp; &nbsp; # read the csv data into list `rows`&nbsp; &nbsp; rows = list(reader)for row in rows:&nbsp; &nbsp; # convert all values to float for easy comparison&nbsp; &nbsp; nums = map(float, row)&nbsp; &nbsp; # sort values in descending order&nbsp;&nbsp; &nbsp; sortedrows.append(sorted(nums, reverse=True))# write sorted data to a new csv filewith open('sorted.csv', 'w') as f:&nbsp; &nbsp; writer = csv.writer(f)&nbsp; &nbsp; writer.writerow(header)&nbsp; &nbsp; writer.writerows(sortedrows)sorted.csv 应包含所需的结果:NumberA,NumberB22.0,10.044.0,33.0779.7,776.478.0,77.0在 Excel 中查看:
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python