Python - Código de python se cae al tiempo

 
Vista:
Imágen de perfil de Jhonathan

Código de python se cae al tiempo

Publicado por Jhonathan (7 intervenciones) el 24/08/2017 22:59:13
Muy buenas gente, resulta que llevo tiempo trabajando con Python y he desarrollado una comunicación por puerto serie el cual recibe datos y luego los envía a una base de datos, el código consta de unas 300 líneas más o menos. Este código yo necesito que se esté ejecutando 24/7, es decir, todo el tiempo sin interrupciones, sin embargo cuando lo ejecuto todo funciona perfectamente pero luego de un tiempo (y no un tiempo fijo) me salen errores como si los datos llegaran mal, ya que lo que yo espero es un número decimal y lo que me dice el error es que el número tiene 3 puntos, acá les muestro el error que me genera.

1
2
3
File "/home/pi/Desktop/Proyecto_de_grado/CodigoCompleto.py", line 35, in Promedio
    var2 = float(sensor2[j])
ValueError: invalid literal for float(): 23.5021.167

Pero no entiendo por qué está tomando este valor, si yo reviso en los valores que me envía el microcontrolador y ese valor no lo envía nunca, así que no sé de dónde saca python ese valor.

Hay alguna forma de resolverlo?

Muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 2.239
Plata
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Código de python se cae al tiempo

Publicado por xve (1646 intervenciones) el 25/08/2017 07:53:19
Hola Jonathan, yo lo que haría, seria primeramente crear un log con los valores recibidos, es decir, cada valor recibido lo pondría en un archivo de texto, para poder ver que estas recibiendo.
Luego crearía una excepción en tu código (try ... except ...) para que cuando suceda no se pare la aplicación, y guardaría en el archivo log una linea indicando dicho error.

De esta manera, tu aplicación no se parara, y podrás saber si realmente el valor es recibido con dos puntos.

te sirve?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar