使用python在csv中编辑行

时间:2013-08-14 18:58:07

标签: python csv editing

到目前为止,这是我的代码:

def edit_assignment():
    print 'Select Assignment'
    list_assignment()
    f1 = open(fdir, 'r')
    lines = f1.readlines()
    f1.close()
    line_to_edit = raw_input('Assignment to edit(start from 0): ')
    if os.path.exists(fdir):
        f = open(fdir, "w")
        t1 = raw_input('TEST:')
        lines[int(line_to_edit)] 
        f.writelines()
        f.close()        
    else:
        check()
        edit_assignment()

这是更大代码的一部分,但我无法弄清楚如何在csv中替换X行。我已经坚持了一段时间,不知道该去哪里。

感谢任何帮助

1 个答案:

答案 0 :(得分:0)

此代码可以改进但它确实有效。只需将output_array[row_to_edit]更改为您要编辑的行和相应的值,然后它将使用该数据重写CSV。

import csv

c = csv.reader(open('YourCSV.csv', 'rU'))

output_array = []
for row in c:
    output_array.append(row)

output_array[row_to_edit] = 'Edited'

writer = csv.writer(open('YourCSV.csv', 'wb'))

for row in output_array:
    writer.writerow(row)