python division timedelta

Python 2.6.5: Divide timedelta con timedelta



division (1)

En Python ≥2.7, hay un método .total_seconds() para calcular los segundos totales contenidos en el timedelta:

>>> down_time.total_seconds() / server_life_period.total_seconds() 0.0003779903727652387

De lo contrario, no hay más remedio que calcular los microsegundos totales (para las versiones <2.7 )

>>> def get_total_seconds(td): return (td.microseconds + (td.seconds + td.days * 24 * 3600) * 1e6) / 1e6 ... >>> get_total_seconds(down_time) / get_total_seconds(server_life_period) 0.0003779903727652387

Estoy tratando de dividir un objeto timedelta con otro para calcular el tiempo de actividad del servidor:

>>> import datetime >>> installation_date=datetime.datetime(2010,8,01) >>> down_time=datetime.timedelta(seconds=1400) >>> server_life_period=datetime.datetime.now()-installation_date >>> down_time_percentage=down_time/server_life_period Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unsupported operand type(s) for /: ''datetime.timedelta'' and ''datetime.timedelta''

Sé que esto se resolvió en Python 3.2 , pero ¿hay alguna forma conveniente de manejarlo en versiones anteriores de Python, además de calcular la cantidad de microsegundos, segundos y días y dividir?

Gracias,

Adán