[Python-es] Salto de linea

kausdiv kausdiv en gmail.com
Mar Oct 16 12:56:06 CEST 2012


Hola.

os comento algo que me pasa casi siempre que uso ficheros. :-(

Tengo un archivo CSV donde hay muchas lineas repetidas. He preparado el 
siguiente programa que busca los registros repetidos.
La idea es que se crea un nuevo archivo "bb.css" donde van todos los 
registros menos los repetidos.

El problema es que se agrega un salto de linea que no debería ("\n") de 
forma que el resultado es algo as:
---------
linea ok

linea ok
---------
Entre cada linea ok hay una linea en blanco.

Este es el programa:
-----------------------------------------
import csv

cn=0 # para contar reptediso
farchi="aa.csv"  # archivo con todos los registros
cm=[]  # Para poder conocer los repetidos.

f=open("bb.csv","w")  # Archivo destino con los registros sin repetir.
swriter = csv.writer(f, delimiter=',')

with open(farchi, 'rb') as csvfile:
     spamreader = csv.reader(csvfile, delimiter=',')
     for row in spamreader:
         if len(row)>5:
             s = row[2]+" "+row[5]
             s = s.lower()
             if s in cm:
                 cn += 1
             else:
                 cm.append(s)
                 swriter.writerow(row)

f.close()

print "Registros duplicados ",cn


Más información sobre la lista de distribución Python-es