2013-05-22 39 views
5

Mam dane w pliku i muszę zapisać je w pliku CSV w określonej kolumnie. Dane w pliku jest tak:Używanie Pythona do pisania na określonych kolumnach w pliku CSV

002100 
002077 
002147 

Mój kod to:

import csv 

f = open ("file.txt","r") 
with open("watout.csv", "w") as output: 
    for line in f : 
     c.writerows(line) 

Jest zawsze pisze na pierwszej kolumnie. Jak mogę rozwiązać ten problem? Dzięki.

+1

1) Ten kod nie będzie działać i 2) Należy wyjaśnić zwykły angielski, co próbujesz osiągnąć, bo w tej chwili - nie jest jasne, o co pytasz/attacks –

+3

Wygląda na to, że nie używasz modułu csv, nawet jeśli go importujesz, i 'c 'nie jest zdefiniowane. Opublikuj minimalny, działający przykład, który jasno pokazuje twój problem. –

Odpowiedz

4

To jest jak I rozwiązać problem

f1 = open ("inFile","r") # open input file for reading 

with open('out.csv', 'wb') as f: # output csv file 
    writer = csv.writer(f) 
    with open('in.csv','r') as csvfile: # input csv file 
     reader = csv.reader(csvfile, delimiter=',') 
     for row in reader: 
      row[7] = f1.readline() # edit the 8th column 
      writer.writerow(row) 
f1.close() 
-7

Przeczytaj docs i użyj modułu csv ze standardowej biblioteki.

Ale być nieco bardziej szczegółowe, można zrobić:

for column in row: 
    do things