我有一个csv文件说, 名字oldprice oldprofit
k2 6.319044375 0.6469451082
k3 9.2603346875 0.4639390435
k4 10.6868384375 1.1287761798
K1 4.1458078125 0.5129700421
k5 7.2702040625 0.6632701035
K1 8.025495625 0.7561548244
k6 7.73398625 1.017231759
k7 9.8022878125 0.562983695
k8 5.44912125 0.8532092538
k2 9.5360690625 0.5481493305
K1 6.48153375 1.4176140292
K1 6.66228125 1.0444456163
k9 7.5859665625 1.276779643
K1 8.6394253125 0.6690271589
我按升序排序名称,然后按降序排列oldprice(第3列)。 输出应该是,
K1 6.48153375 1.4176140292
K1 6.66228125 1.0444456163
K1 8.025495625 0.7561548244
K1 8.6394253125 0.6690271589
K1 4.1458078125 0.5129700421
k2 6.319044375 0.6469451082
k2 9.5360690625 0.5481493305
k3 9.2603346875 0.4639390435
k4 10.6868384375 1.1287761798
k5 7.2702040625 0.6632701035
k6 7.73398625 1.017231759
k7 9.8022878125 0.562983695
k8 5.44912125 0.8532092538
k9 7.5859665625 1.276779643
如何在python中生成它?
答案 0 :(得分:1)
将每行csv设置为列表。现在根据oldprice排序。 获取列表并使用名称再次对其进行排序。 使用this answer to sort。
从上面的python 2.2开始,sort是稳定的。由于各种旧价格的订单将在使用名称的排序中保持在具有相同名称的行中。