当前位置: 首页 > 面试题库 >

来自time.Time的意外输出

卜勇
2023-03-14
问题内容

我只是通过跟随有关Udemy的教学视频开始学习Go的,我尝试按如下方式打印当前时间

import (
  "fmt" 
  "time"
)

func main(){
  t := time.Now()

  fmt.Println(t) 
}

我得到一个很长的文本作为输出如下

2018-07-04 12:03:07.2911671 +0800 +08 m=+0.002000201

我原本希望只在+0800其后加上a timeZone,这应该是结尾。预期的输出如下所示,也如本教程视频中所示。但是对我来说,结果的形式要长得多。

2018-07-04 12:03:07.2911671 +0530 IST

问题是,为什么同一个命令date.Now()在教师的程序和我的程序之间返回不同的格式?为什么没有设置特定的格式,不应该standardize/base返回一种格式?


问题答案:

问题是,为什么同一条命令date.Now()在讲师的程序和我的程序之间返回不同的格式?

因为该教程是在Go 1.9发行之前创建的。从Go
1.9开始,单调时钟支持已添加到该time.Time结构中,从而增加了这些额外的字段。

对于正常使用,您应该始终使用Format函数输出时间,而不是输出原始数据。这将产生更有用的输出,并且可以防止将来对基础类型的任何添加。



 类似资料:
  • Berat有资格获得驾驶执照! Berat不能买酒! Berat的有效年龄:真 虽然,我优先考虑每个规则与突出关键字,“可以由酒精”规则仍然被解雇。它不应该被激发,因为在第一个规则中执行setValid(true),而在第二个规则中执行isValid()==false控件应该返回false,因此应该遗漏部分。

  • 问题内容: 我有这些表, 和。我想执行左外部联接。 劳斯莱斯 推出 SUMing,JOINing和GROUPings之后的预期输出==> 我的代码: 但是上面代码的O / P是 我不知道我要去哪里错了-你能解释一下吗? 问题答案: 您没有做错任何事。这就是JOIN的行为 它是左边的行数X右边的行数,在您的情况下为3 x 2 = 6。 试试这个 SQLFiddle 我知道这不适用于SQL Serve

  • 我的ANTLR4有问题。我正在尝试从python 3代码打印AST,但有一些错误,我不知道如何修复它们。 我编写了简单的测试代码: 我运行了程序,但出现了以下错误: 我的主要班级: 我有这个网站的语法:https://github.com/antlr/grammars-v4/tree/master/python3

  • 因此,基本上,当为时,即第一次,应在20秒内触发,并将设置为。从下一次开始,它应该每隔5秒就会被发射一次。 我面临的问题是,每次被激发时,输出中只有一条消息。也就是说,我在20秒后收到一条消息,每5秒收到一条消息。我希望在每次触发的输出中有20条消息。 如果我使用并创建一个五秒的时间窗口,则每5秒输出20条消息。请帮我把这个代码弄对。我是不是缺了什么?

  • 我正在为这个问题创建相同的线程。因为我想进一步解决这个问题。问题是我得到了警告 我在这里和这里找到了一些关于这个的讨论 我将SDK降级到16,但我仍然得到同样的错误。我必须达到什么样的最低sdk级别才能降级我的应用程序?对此没有替代方案吗??:(

  • 描述 (Description) 方法time()将时间作为以UTC为单位以秒为单位表示的浮点数返回。 Note - 即使始终将时间作为浮点数返回,并非所有系统都提供精度高于1秒的时间。 虽然此函数通常返回非递减值,但如果在两次调用之间设置了系统时钟,则它可以返回比先前调用更低的值。 语法 (Syntax) 以下是time()方法的语法 - time.time() 参数 (Parameters)