【问题标题】:dictionary with empty key带空键的字典
【发布时间】:2016-10-25 19:39:17
【问题描述】:

我想知道是否可以使用 Empty KEY 在 YAML 中创建地图。

例如 地图{ somedifficultString: "someEasyString", 空键:“无” }

如果输入键是“空字符串”,基本上我想显示“none”

以往的研究: 1. YAML 文档确实说空键使用° 之类的东西? http://www.yaml.org/spec/1.2/spec.html#c-s-implicit-json-key%28c%29 我试过了,没有用 2. 有一个关于如何处理空值的问题,这很简单,但对于空键YAML: dictionary with empty value

【问题讨论】:

    标签: dictionary yaml


    【解决方案1】:

    使用这个

    "": none
    

    如果你想要null 字符串,那么你可以使用~:none

    等效的 JSON

    {
      "": "none"
    }
    

    【讨论】:

    • 我正在使用那个兄弟......它有效。请查看官方文档。
    • ~ 表示null 类型(Python 的None),与空字符串不同(即''
    • 根据 YAML 文档。你可以使用 ~ 为空
    【解决方案2】:

    使用关键指标?

    { somedifficultString: "someEasyString", ? : "none" }
    

    您也可以一起省略密钥:

    { somedifficultString: "someEasyString", : "none" }
    

    或者,如果您想明确,请使用引号:

    { somedifficultString: "someEasyString", "": "none" }
    

    请注意,第三个选项的解释稍有不同,因为引用不允许 YAML 猜测类型,因此可以保证最终得到一个空字符串。前两个示例可能由 YAML 实现映射到 null type,因此您将获得 null 值而不是空字符串。请查阅您的 YAML 处理器的文档或尝试一下。

    YAML 规范中的° 表示一个空标量,而不是实际内容,正如here 所定义的那样。

    【讨论】:

      猜你喜欢
      • 2011-06-05
      • 1970-01-01
      • 1970-01-01
      • 2012-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-14
      相关资源
      最近更新 更多