Solución:
Estás mezclando pestañas y espacios. No hagas eso. Específicamente, el __init__
El cuerpo de la función está sangrado con pestañas mientras on_data
el método no lo es.
Aquí hay una captura de pantalla de su código en mi editor de texto; Configuré la tabulación en 8 espacios (que es lo que usa Python) y seleccioné el texto, lo que hace que el editor muestre pestañas con líneas horizontales continuas:
En su lugar, tiene su editor configurado para expandir pestañas a cada cuarta columna, por lo que los métodos aparecer alinear.
Ejecute su código con:
python -tt scriptname.py
y corregir todos los errores que encuentre. Luego configure su editor para usar solo espacios por sangría; un buen editor insertará 4 espacios cada vez que use el PESTAÑA llave.
Tiene un formato de sangría mixto (espacios y tabulaciones)
En el Bloc de notas ++
Cambiar la configuración de la pestaña a 4 espacios
Ir a Ajustes -> Preferencias -> Configuración de pestaña -> Reemplazar por espacios
Corregir las sangrías mixtas del archivo actual
Seleccionar todo CONTROL+A
Hacer clic PESTAÑA una vez, para agregar una sangría en todas partes
Correr CAMBIO + PESTAÑA para eliminar la sangría adicional, reemplazará todos los caracteres TAB a 4 espacios.
Tuve el mismo problema varias veces. Sucedió especialmente cuando intenté pegar algunas líneas de código de un editor en línea, los espacios no están registrados correctamente como ‘pestañas’ o ‘espacios’.
Sin embargo, la solución fue bastante simple. Solo tuve que eliminar el espacio entre todas las líneas de código en ese conjunto específico y volver a espaciarlo con las pestañas correctamente. Esto solucionó mi problema.