Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

276
Vistas
¿Cómo insertar espacios finales en un doctest, para que no falle incluso cuando el resultado real y el esperado se vean iguales?

Estoy tratando de hacer un doctest. Los resultados 'Esperado' y 'Obtenido' son idénticos, pero mi doctest sigue fallando. Está fallando porque hay espacios finales después x-axis y-axis en la impresión que no he incluido en mi cadena de documentación. Sin embargo, ¿cómo lo incluyo? Cuando inserto los espacios manualmente y hago la prueba, se ejecuta correctamente siempre que mantenga el cursor allí.

eje x eje y______________________[cursor aquí]

Sin embargo, si ejecuto la prueba con el cursor en otro lugar, los espacios finales se eliminan y la prueba falla.

Sé que suena muy extraño, ¡pero es lo que es!

Este es el código:

 import pandas as pd import doctest class NewDataStructure(pd.DataFrame): """ >>> arrays = [[1, 1, 2, 2], [10, 20, 10, 20]] >>> index = pd.MultiIndex.from_arrays(arrays, names=('x-axis', 'y-axis')) >>> data_input = {"Pressure (Pa)": [1+1j, 2+2j, 3+3j, 4+4j], ... "Temperature": [1, 2, 3, 4]} >>> new_data_variable = NewDataStructure(data=data_input, index=index, title="Pressures and temperatures") >>> print new_data_variable New Data Structure Pressures and temperatures: Pressure (Pa) Temperature x-axis y-axis 1 10 (1+1j) 1 20 (2+2j) 2 2 10 (3+3j) 3 20 (4+4j) 4 """ def __init__(self, data, index, title): super(NewDataStructure, self).__init__(data=data, index=index) self.title = title def __str__(self): return "New Data Structure {}:\n{}".format(self.title, super(NewDataStructure, self).__str__()) doctest.testmod()

A continuación se muestra mi resultado cuando falla. Incluso aquí debería poder seleccionar el área después x-axis y-axis y detectar si hay espacios finales o no.

 Failed example: print new_data_variable Expected: New Data Structure Pressures and temperatures: Pressure (Pa) Temperature x-axis y-axis 1 10 (1+1j) 1 20 (2+2j) 2 2 10 (3+3j) 3 20 (4+4j) 4 Got: New Data Structure Pressures and temperatures: Pressure (Pa) Temperature x-axis y-axis 1 10 (1+1j) 1 20 (2+2j) 2 2 10 (3+3j) 3 20 (4+4j) 4
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Encontré una solución, usando la bandera de normalizar espacios en blanco

ponlo en el doctest como

 >>> print new_data_variable # doctest: +NORMALIZE_WHITESPACE

o al llamar al doctest

 doctest.testmod( optionflags= doctest.NORMALIZE_WHITESPACE )
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda