leer datos

Marcos Sánchez Provencio rapto en arrakis.es
Mie Sep 29 17:54:42 CEST 2004


Nan loz escribió:

>Chema, 
>lo que he hecho hasta ahora es transformar mis datos a csv y usar ese modulo, pero quisiera saber si hay alguna forma de leer los datos sin usar un separador (tab o comas etc) sino definiendo los campos directamente en python para evitarme el paso intermedio. 
>Gracias
>Nancy
>
>		
>  
>
parece que lo más sencillo es:
for lin in open('fich.txt'):
    SEERregistry=lin[1:3] # o int(lin[1:3]) si lo quieres como entero, etc
    CaseNumber=lin[3:11]
    RecordNumber=lin[12:15]
    etc.
También puedes afinarlo con tablas tipo:
columnas=[
    ('SEERregistry',1,2,str),
    ('CaseNumber',3,8,int),
    ('RecordNumber',11,2,int),
]
y luego:
ret=[]
for lin in open('fich.txt'):
    reg={}
    for col in columnas:
       reg[col[0]=col[3](lin[col[1]:col[1]+col[2]])
    ret.append(reg)
¿Va por ahí la cosa?
----

0200000022011   44718860880101300    09609048010328010101184    0007185    1         991    C61 
donde las variables estan definidas de la siguiente forma:

ITEM NAME               ITEM #              POSITIONS                   LENGTH

SEER registry                    01                   01-02                            2

Case number                     02                    03-10                            8

Record number                  03                    11-12                            2




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