Преглед на файлове

Remove python 2.7 requirement for format_timedelta

Jonas Borgström преди 14 години
родител
ревизия
833baae65b
променени са 1 файла, в които са добавени 10 реда и са изтрити 2 реда
  1. 10 2
      darc/helpers.py

+ 10 - 2
darc/helpers.py

@@ -212,8 +212,16 @@ def format_time(t):
 
 
 def format_timedelta(td):
-    """Format timedelta in a human friendly format"""
-    ts = td.total_seconds()
+    """Format timedelta in a human friendly format
+
+    >>> from datetime import datetime
+    >>> t0 = datetime(2001, 1, 1, 10, 20, 3, 0)
+    >>> t1 = datetime(2001, 1, 1, 12, 20, 4, 100000)
+    >>> format_timedelta(t1 - t0)
+    '2 hours 1.10 seconds'
+    """
+    # Since td.total_seconds() requires python 2.7
+    ts = (td.microseconds + (td.seconds + td.days * 24 * 3600) * 10**6) / float(10**6)
     s = ts % 60
     m = int(ts / 60) % 60
     h = int(ts / 3600) % 24