Replace data in csv file using python

后端 未结 2 1565
傲寒
傲寒 2020-12-18 15:29

This is the new input file format. I need to automate the process of replacing the content of one column in a .csv file with the use of python. I can also open the .csv file

相关标签:
2条回答
  • 2020-12-18 15:58

    You could use the csv module in Python to achieve this.

    csv.reader will return each row as a list of strings. You could then use csv.writer to stream each row and modify the ID column at this point, this will create a new file though.

    So:

    import csv
    reader = csv.reader(open('file.csv', 'rb'))
    writer = csv.writer(open('outfile.csv','wb'))
    for row in reader:
        writer.writerow([row[0], "input", row[2], row[3]])
    
    0 讨论(0)
  • 2020-12-18 16:00

    Read the .csv line-by-line, split on ,, and replace the second column with "input". Write it out (to a different file) as you go:

    f = open('mycsv.csv','rb')
    fo = open('out.csv','wb')
    
    # go through each line of the file
    for line in f:
        bits = line.split(',')
        # change second column
        bits[1] = '"input"'
        # join it back together and write it out
        fo.write( ','.join(bits) )
    
    f.close()
    fo.close()
    

    Then you can rename it to replace the original file if you like.

    0 讨论(0)
提交回复
热议问题