在csv文件中排序整数 - python [英] Sorting integers in a csv file - python

查看:134
本文介绍了在csv文件中排序整数 - python的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个csv文件,如下所示:

  Tom,10 
Jack,10
Alice,10
Ben,9

我需要能够按秒列从最高到最低。
我试过下面的代码:

  import csv 

file = open bestscores.csv,r)
reader = csv.reader(file,delimiter ='')

sort = sorted(reader,key = lambda x:int ]),reverse = True)
print(sort)

  ValueError:无效的文字为int()与base 10:'Tom,10'



我如何解决这个问题?

解决方案

p>您使用错误的分隔符并排序错误的索引。这将为您工作:

  import csv 

with open(bestscores.csv, r)as fh
reader = csv.reader(fh,delimiter =',')

sort = sorted(reader,key = lambda x:int(x [1] reverse = True)
print(sort)


I have a csv file that looks like this:

Tom,10
Jack,10
Alice,10
Ben,9

I need to be able to sort by the second column from highest to lowest. I have tried the following code:

import csv

file = open("bestscores.csv","r")
reader = csv.reader(file, delimiter = ' ')

sort = sorted(reader,key=lambda x: int(x[1]), reverse=True)
print(sort)

This results in the following error:

ValueError: invalid literal for int() with base 10: 'Tom,10'

How can I solve this?

解决方案

You are using the wrong delimiter and sorting the wrong index. This should work for you:

import csv

with open("bestscores.csv","r") as fh
  reader = csv.reader(fh, delimiter = ',')

  sort = sorted(reader, key=lambda x: int(x[1]), reverse=True)
  print(sort)

这篇关于在csv文件中排序整数 - python的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆