【2019.08.13 Python每日一题】答案 —— 文件内容排序

针对输入文件内容ShabiIndex.csv,进行排序,并输出排序好的文件为ShabiIndex_sorted.csv

排序规则:1. 按傻逼指数排,倒序;2 如果傻逼指数相同,则继续按能吃指数倒序。

我们看看我随机写的这个文件,最后谁胜出了!!!哈哈哈

#读取文件,得到data列表
with open('/Users/kongyue/Desktop/ShabiIndex.csv','r') as f:
    data = [line.strip().split(',') for line in f]

#单独提取首行,对其余行的列表进行排序,最后再把首行插入头部
row_1 = data[0]
data = data[1:]
data.sort(key= lambda x: (-int(x[1]), -int(x[3])))
data[:0] = [row_1]

#写出csv文件,每个元素(列表类型)先join成字符串,末尾加换行符,再循环写入
with open('/Users/kongyue/Desktop/ShabiIndex_sorted.csv','w') as f:
    for line in data:
        f.write(','.join(line)+'\n')

 

你可能感兴趣的:(【2019.08.13 Python每日一题】答案 —— 文件内容排序)