Python:插入排序算法可根据一列对csv的行进行排序

时间:2018-10-19 08:30:43

标签: python sorting insertion-sort

我正在尝试找到一种方法,可以基于一列对csv文件进行排序,而无需使用内置的排序方式。我一直在用一个插入排序程序弄乱它,但是我很迷路。这是到目前为止我得到的:

def insertSort(fileobj,colno):
    sline = line.split(',')
    l=0
    for line in fileobj:
        l += 1
    for i in range(2,l):
        thisline = fileobj.split(",")[i]
        key = thisline[colno]
        j = i-1
        temp = fileobj.split(",")[j]
        lastline = temp[colno]
        while j>=1 and key < lastline:
            fileobj[j+1]=fileobj[j]
            j -= 1
        fileobj[j+1] = key

colno将是您要排序的列的索引,并假设第一行是标题。我是python的新手,所以我缺少基本的东西吗?将csv转换为字典并更改我的方法会更容易吗?

编辑:忘记提及fileobj将是已打开的文件,并且将readlines()分配给fileobj

0 个答案:

没有答案