2013-05-22 33 views
5

Ho dati in un file e ho bisogno di scriverlo in un file CSV in una colonna specifica. I dati nel file è come questo:Usa Python per scrivere su colonne specifiche nel file csv

002100 
002077 
002147 

Il mio codice è questo:

import csv 

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

E 'sempre scrive sulla prima colonna. Come potrei risolvere questo? Grazie.

+1

1) Che il codice non funzionerà e 2) si dovrebbe spiegare in in inglese semplice cosa stai cercando di ottenere, come al momento - non è chiaro a cosa stai chiedendo/tentativi –

+3

Sembra che tu non stia usando il modulo csv, anche se lo stai importando, e 'c 'non è definito. Pubblica un esempio minimo e funzionante che mostri chiaramente il tuo problema. –

risposta

4

Ecco come ho risolto il problema

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

Leggere il docs e utilizzare il modulo csv dalla libreria standard.

Ma per essere un po 'più preciso, si può fare:

for column in row: 
    do things 
Problemi correlati