Diferencia de tiempo en segundos (como punto flotante)

>>> from datetime import datetime >>> t1 = datetime.now() >>> t2 = datetime.now() >>> delta = t2 - t1 >>> delta.seconds 7 >>> delta.microseconds 631000 

¿Hay alguna manera de obtener eso como 7.631000? Puedo usar el módulo de tiempo, pero también necesito las variables t1 y t2 como objetos DateTime. Entonces, si hay una manera fácil de hacerlo con datettime, sería genial. De lo contrario se verá feo:

 t1 = datetime.now() _t1 = time.time() t2 = datetime.now() diff = time.time() - _t1 

combined = delta.seconds + delta.microseconds/1E6

para la versión más reciente de Python (Python 2.7+ o Python 3+), también puede usar el método total_seconds :

 from datetime import datetime t1 = datetime.now() t2 = datetime.now() delta = t2 - t1 print(delta.total_seconds()) 

No sé si hay una mejor manera, pero:

 ((1000000 * delta.seconds + delta.microseconds) / 1000000.0) 

o posiblemente:

 "%d.%06d"%(delta.seconds,delta.microseconds)