Я работаю над примером Голанга, который требует некоторых расчетов даты. Я скорее надеялся, что Go предоставит некоторые красивые библиотеки дат, похожие на отличный модуль Python datetime
, но это, похоже, не так.Расчет дельт между двумя датами по годам, дням, часам, минутам и т. Д.
Как я могу представить этот пример python в Go?
from datetime import date
d0 = date(2013, 8, 18)
d1 = date(2018, 9, 26)
delta = d0 - d1
print delta.days
>>-1865
я провел справедливое немного времени озираясь о том, как сделать это, я не могу найти окончательный ответ, который является ясным и кратким и без оговорок, таких как не правильно расчета високосных лет и т.д.
Это, по-видимому, довольно большое ограничение на то, что становится отличным небольшим языком для создания прототипов кросс-платформы и в конечном итоге производственных приложений.
Хм, приятно спасибо. Не могу поверить, что я пропустил это. Существует ли 'time.strptime (строка [, format]), например. 'time.strptime ('11/24/2013 ',"% m /% d /% Y ")' эквивалентно? – user1513388
@ user1513388 Да, есть. Проверьте функцию ['time.Parse()'] (http://golang.org/pkg/time/#Parse). – icza
Спасибо, я просто пытался это сделать. Я столкнулся с этой проблемой, хотя при попытке разобрать даты вроде этого «24/11/2013» или это «11/24/2013» http://stackoverflow.com/questions/14106541/go-parsing- даты-строки, которые являются нестандартными форматами, хотя это довольно запутанно. – user1513388