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

如何打印包含点的键的值

费和惬
2023-03-14
问题内容

我正在尝试打印地图的值,该地图的键上有一个点(.)。

示例图:

type TemplateData struct {
    Data map[string] int
}
tpldata := TemplateData{map[string]int {"core.value": 1}}

我试过了:

{{ $key := "core.value" }}
{{ .Data.key }}

但得到:

2014/06/17 16:46:17 http: panic serving [::1]:41395: template: template.html:13: bad character U+0024 '$'

{{ .Data."core.value" }}

但得到:

2014/06/17 16:45:07 http: panic serving [::1]:41393: template: template.html:12: bad character U+0022 '"'

请注意,我能够成功打印没有点的键的值。


问题答案:

正如@ martin-ghallager所说,需要使用外部函数来访问这些元素。

有用的是,标准库已经提供了index函数(它的dotNotation功能完全与Martin的功能相同)。

要使用它,只需编写:

{{ index .Data "core.value" }}

index万一密钥不存在,该函数将返回默认值。如果您的词典具有同质数据,则此方法有效,但是当其异构时,它将返回错误的值。在这种情况下,您可以使用以下命令显式设置默认值:

{{ 0 | or (index .Data "core.value") }}


 类似资料:
  • 我试图从包含数组的对象中提取值。以下是对象的外观: 我想遍历对象的所有键和值(尤其是数组bookInfo中的键/值),当找到与传递的字符串参数“myKey”匹配的键时,我想返回键值。下面的代码工作正常,但由于myBookList上的条目不止一个...当我发现我匹配时,由于每次迭代的原因,我无法退出该过程(typecript中的foreach不接受中断或返回),并且我总是得到对象的最后一个条目。如何

  • 问题内容: 我想打印一个特定的Python字典键: 现在我可以检查是否可以,但是我想做的是打印密钥的名称。当然可以使用,但是我不想列出 所有 键,而只列出一个特定的键。例如,我期望这样的事情(用伪代码): 有什么方法可以打印键名? 编辑: 好的,非常感谢你们的反应!:)我意识到我的问题没有很好地表述和琐碎。我只是感到困惑,因为我意识到key_name是两个不同的东西,我认为从字典上下文中打印出来是

  • 然而,试图创建一个最多4人的组时,具有相同ID的人不能在同一个组中,例如“Tim ID1、Josh ID2、Ben ID3、George ID4”,这将是一个罚款,但“James ID2”不能加入该组,因为Josh已经在其中了。 我不明白为什么这种方法不起作用,任何帮助都将不胜感激。

  • 打印页面包含RichTextBlock。这个RichTextBlock过去包含文本,可以使用以下代码打印。如果页面包含列表框或网格视图,我需要如何打印的帮助。是否可以使用RichTextBlock包含列表框并检测溢出以继续打印?如果您能提供示例、参考或教程,将不胜感激。谢谢 ---更新此列表框将包含以下数据: ItemName ItemCode价格数量。。 ------ ------ ----更新

  • 问题内容: 我对此表示怀疑。 输出: 但是我想让它打印M2而不是M11。我无法对++进行编号,因为该变量与for循环有关,如果这样做,则会给我不同的结果,并且由于输出格式更改,因此无法使用其他print语句进行打印。 请您帮助我如何正确打印它。 问题答案: 试试这个: 换行符在哪里

  • 问题是如何使用方法在HashMap中pritn值=1的图书?在代码中,ive删除了数组中的书籍,这样代码就可以更短。