将Python解析为Golang-DateTime
我一直在尝试从Pythons datetime获取特定的字符串输出 (2006-01-02T15:04:05.000Z),因此我可以使用time.parse在golang中轻松解析它 我试过(用python) 这会给我这样的信息:“2018-11-06T22:48:50.002750Z” 当我试着在Golang中这样解析它时:将Python解析为Golang-DateTime,python,datetime,go,Python,Datetime,Go,我一直在尝试从Pythons datetime获取特定的字符串输出 (2006-01-02T15:04:05.000Z),因此我可以使用time.parse在golang中轻松解析它 我试过(用python) 这会给我这样的信息:“2018-11-06T22:48:50.002750Z” 当我试着在Golang中这样解析它时: dtLayout := "2006-01-02T15:04:05.000Z" dateStr := "2018-11-06T22:48:50.002750Z" pars
dtLayout := "2006-01-02T15:04:05.000Z"
dateStr := "2018-11-06T22:48:50.002750Z"
parsedDate, err := time.Parse(dtLayout, dateStr)
if err != nil {
if err != nil {
log.Printf("error: %v", err)
}
我得到这个错误:
2018/11/06 16:49:11错误:将时间“2018-11-06T22:48:50.002750Z”解析为“2006-01-02T15:04:05.000Z”:无法将“750Z”解析为“Z”
也许有一种简单的方法可以用几毫秒来完成,但我很固执,感觉自己很接近 小数秒中的零必须与字符数完全匹配,并且正如错误所述,
750Z
之后的部分与格式字符串的相应部分不匹配
您可以添加正确数量的零,如“2006-01-02T15:04:05.000000 z”
,或者使用9
作为更灵活的格式
dtLayout := "2006-01-02T15:04:05.9Z"
9!这就是我想要的解决方案。非常感谢你,它工作得很好,而且不觉得太脏
dtLayout := "2006-01-02T15:04:05.9Z"