Puedes utilizar el or de python para eso. Por ejemplo:
registro[2].replace(",", ".") or -1, en el caso de que la primera parte
esté vacía, se utilizará el -1, sino, pues se utiliza la primera.
El 25 de mayo de 2017, 16:48, Horacio <[email protected]> escribió:
> Buenas,, cuando intento cargar un archivo en formato CSV y ocurre una
> situación como esta,,,
>
> L1000_06;0,4435295926;3,08433806394649E-06;;;;
> L2000_01;;;0,0469908055;0,1543794704;0,3073072258;1,0129957616
>
> donde hay registros con campos sin contenido cuando hago correr esta
> porción de código,,,
>
> try:
> i=0
> lector=csv.reader(entrada,delimiter=';')
> for registro in lector:
> if (i>0) and (len(registro)>0):
> a1=registro[0]
> a2=float(registro[1].replace(",", "."))
> a3=float(registro[2].replace(",", "."))
> a4=float(registro[3].replace(",", "."))
> Archivo.append(a1)
> IDm.append(a2)
> Mu.apped(a3)
> Tiempo.apped(a4)
> i+=1
> finally:
> entrada.close()
>
> ve devuelve la excepción,,,
>
> Traceback (most recent call last):
> File "carga_base_azul2.py", line 33, in <module>
> a3=float(registro[2].replace(",", "."))
> ValueError: could not convert string to float:
>
> Cómo puedo hacer que cada vez que encuentre un registro con campo sin
> contenido además de no cortarse, le asigne -1 como contenido,,,
>
> Si alguien tiene una idea gracias,,, Horacio
> _______________________________________________
> Python-es mailing list
> [email protected]
> https://mail.python.org/mailman/listinfo/python-es
>
--
Víctor Ramírez de la Corte @virako
https://play.google.com/store/apps/details?id=com.littlegamescorp.cuadriculados.android
http://wadobo.com/ <http://agoravoting.org/> @wadobo
http://agoravoting.org/ @agoravoting
_______________________________________________
Python-es mailing list
[email protected]
https://mail.python.org/mailman/listinfo/python-es