Я хочу добавить атрибуты продолжительности времени в xml файле, используя Python 2.7.
import xml.etree.ElementTree as ET
import time
for k in root.findall('TC'):
ttt= k.get('time')
s = time.strptime(ttt, "%H:%M:%S")
total_time = total_time + s
Я не могу использовать оператор +
, ошибка - это unsupported operand types (+) None_Type, time.struct_time
.
Как определить total_time
как struct_time
?
Вам нужно будет преобразовать компоненты struct_time
в объект datetime.timedelta
чтобы разумно обрабатывать длительность времени:
import datetime
import time
total_time = datetime.timedelta()
for k in root.findall('TC'):
ttt= k.get('time')
s = time.strptime(ttt, "%H:%M:%S")
total_time = total_time + datetime.timedelta(
hours=s.tm_hour, minutes=s.tm_minute, seconds=s.tm_second)
Нет простого способа конвертировать информацию struct_time
в продолжительность; он фактически предназначен для значений даты и времени, хотя использование .strptime()
для синтаксического анализа длительности - не слишком плохая идея.
Значение total_time
теперь является объектом datetime.timedelta()
. Чтобы получить общее количество секунд, используйте для .total_seconds()
метод .total_seconds()
:
print total_time.total_seconds()