Разбирать Python Java-календарь на isodate

У меня есть такие данные.

startDateTime: {'timeZoneID': 'America/New_York', 'date': {'year': '2014', 'day': '29', 'month': '1'}, 'second': '0', 'hour': '12', 'minute': '0'}

Это просто представление для 1 атрибута. Как это у меня есть 5 других атрибутов. LastModified, создан и т. Д.

Я хотел получить это как формат даты ISO гггг-мм-дд чч: ми: сс. это правильный способ сделать это?

def parse_date(datecol):
  x=datecol;
  y=str(x.get('date').get('year'))+'-'+str(x.get('date').get('month')).zfill(2)+'-'+str(x.get('date').get('day')).zfill(2)+' '+str(x.get('hour')).zfill(2)+':'+str(x.get('minute')).zfill(2)+':'+str(x.get('second')).zfill(2)
  print y;
  return;

1 ответ

Решение

Это работает, но я бы сказал, что здесь лучше использовать оператор форматирования строки:

def parse_date(c):
    d = c["date"]
    print "%04d-%02d-%02d %02d:%02d:%02d" % tuple(map(str, (d["year"], d["month"], d["day"], c["hour"], c["minute"], c["second"])))

Кроме того, вы можете использовать time модуль для преобразования ваших полей в значение времени Python, а затем отформатировать, используя strftime, Помните часовой пояс, хотя.

Другие вопросы по тегам