[pyar] CSV y flags

Rommel Augusto Gutierrez Roa ragutierrezroa en gmail.com
Dom Dic 6 22:39:42 ART 2015


Se me ocurre que cada vez que leas una línea, agregues el código a una
lista que comenzará vacía. Y antes de agregar un código preguntarás si ese
valor ya existe para que puedas controlar la duplicación.

Algo así:
l=[]
while linea:
    if linea.split(',')[0] not in l:
        l.append(linea.split(',')[0])
        """TODO si no está el elemento"""
    else:
        """TODO si el elemento se repite"""
        pass

El 6 de diciembre de 2015, 19:52, Leandro Minatel <leandro en minatel.com.ar>
escribió:

> Gracias por las respuestas, voy a tratar de explicarme mejor:
>
> el CSV tiene este formato:
> "00","1.0",2015-12-01,"10:27:08",73,523
> "01",26,"IMPLEG",0000-00-00,"Legajo de Importacion",0,"  ",0,""
> "02",71,521,"N",1,71,"N","","S","N","N",32,"L011","DAL","ALVEAR
> (7","",2010-11-15,0,"99",2,"","S","99",0,1,"N",""
> "03",15,83,15,"8341T",19983,15,"8341F",1414,"","",32,"SANTA FE -
> CENTRO","",""
> "04",73,"RTOVTA","R","X",8,130,"","","",170,"RTOCF",0000-00-00
>
> "05",73,523,"/transf/salida","/transf/bkp",3600,0000-00-00,1000,"/tmp","/transf/",0,2015-11-27
> "06",73,523,"IDPV0000",0.0000,"","Punto de Venta On Line ?","N"
> "07",20,8,"ECR00801","CR00801","C","",1,1,"PV1",20,"841",1,1,24,20,""
> "50","6071640010",73,"F73D","S","X100","32","","",1.0000
>
> Tengo que controlar que existan todos los códigos de registro: "00", "01",
> "02", "03", "04", "05", "06", "07" y "50". El tema es que no necesariamente
> vienen ordenados y pueden repetirse.
>
> Habia pensado algo así:
>
> lReg = [False] * 9
> with open(filename) as f:
> for line in f:
> reg = line[1:3]
> if reg == "00":
> lReg[0] = True
> elif reg == "01":
> lReg[1] = True
> elif reg == "02":
> lReg[2] = True
> elif reg == "03":
> lReg[3] = True
> elif reg == "04":
> lReg[4] = True
> elif reg == "05":
> lReg[5] = True
> elif reg == "06":
> lReg[6] = True
> elif reg == "07":
> lReg[7] = True
> elif reg == "50":
> lReg[8] = True
> if all(lReg):
> print "OK!"
>
>
> pero no se si es la manera correcta o la manera "python"....
>
> Gracias!
>
>
> 2015-12-06 21:37 GMT-03:00 Angel Java Lopez <ajlopez2000 en gmail.com>:
>
>> Hmm.... yo entendi otra cosa, que cada registro ya tiene un campo
>> definido, que indica claramente su tipo
>>
>> Es asi?
>>
>> Nos leemos!
>>
>> Angel "Java" Lopez
>> @ajlopez
>>
>>
>> 2015-12-06 21:34 GMT-03:00 Rommel Augusto Gutierrez Roa <
>> ragutierrezroa en gmail.com>:
>>
>>> Me imagino que cada registro tiene una sintaxis en particular. Para
>>> saber a que registro pertenece podrías utilizar expresiones regulares.
>>>
>>> Espero haber entendido tu planteamiento, y que mi respuesta te ayude en
>>> algo.
>>>
>>> El 6 de diciembre de 2015, 7:48, Leandro Minatel <leandro en minatel.com.ar
>>> > escribió:
>>>
>>>> Buenos días a todos! tengo un script que lee unos archivos CSV y ando
>>>> necesitando verificar su integridad. En principio me interesa verificar 2
>>>> cosas:
>>>>
>>>> 1- que los tipos de registros estén todos
>>>> 2- que los "campos" esten completos
>>>>
>>>> Para el primer punto necesito de su ayuda: el primer campo de cada
>>>> linea es un código de registro y tengo en total 10 tipos de registros
>>>> diferentes. Entonces lo que hago es leer el archivo y prender un flag
>>>> dependiendo ese dato. La pregunta es: ¿que me conviene hacer?
>>>>
>>>> Tengan en cuenta que soy casi un novato en python.
>>>>
>>>> Gracias!
>>>>
>>>> _______________________________________________
>>>> pyar mailing list pyar en python.org.ar
>>>> http://listas.python.org.ar/listinfo/pyar
>>>>
>>>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>>>
>>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>>> Argentina - http://www.usla.org.ar
>>>>
>>>
>>>
>>>
>>> --
>>> Saludos,
>>> Rommel Gutierrez Roa
>>> LOJA-ECUADOR
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> pyar mailing list pyar en python.org.ar
>>> http://listas.python.org.ar/listinfo/pyar
>>>
>>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>>
>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>> Argentina - http://www.usla.org.ar
>>>
>>
>>
>> _______________________________________________
>> pyar mailing list pyar en python.org.ar
>> http://listas.python.org.ar/listinfo/pyar
>>
>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>>
>
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>



-- 
Saludos,
Rommel Gutierrez Roa
LOJA-ECUADOR
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20151206/3f29ba6e/attachment-0001.html>


More information about the pyar mailing list