YAML – 序列样式
YAML - 序列样式
Section titled “YAML - 序列样式”在 YAML 中,序列(sequence)是一个有序的项集合,类似于编程语言中的列表或数组。YAML 提供了两种主要的样式来表示序列:块式(block style)和流式(flow style)。理解这些样式对于编写可读性高、结构良好的 YAML 文档至关重要。
YAML 中的集合(Collection)通常通过从零开始的连续整数进行索引,类似于数组。序列是集合的一种基本类型。
块式序列更详细,通常对于较长的列表更具可读性。块式序列中的每个项在新行开头用一个连字符和空格(- )标记。序列中的所有项必须共享相同的缩进级别。
# 行星的块式序列planets: - Mercury - Venus - Earth - Mars流式序列更紧凑,以内联方式书写,用方括号([])括起来。项之间用逗号和空格(, )分隔。流式适用于短列表,或者当需要将列表嵌入到使用块式可能显得繁琐的另一个结构中时。
# 行星的流式序列planets_flow: [Mercury, Venus, Earth, Mars]示例:组合样式与显式标签
Section titled “示例:组合样式与显式标签”以下示例演示了块式和流式序列,以及使用显式标签(!!seq)来表示序列。虽然对于标准序列通常不需要显式标记(因为 YAML 解析器通常会自动推断类型),但它对于清晰度和特定模式要求可能很有用。
# 演示不同序列样式的示例
# 块式有序节点序列rocky_planets: !!seq - Mercury # 最内侧的行星 - Venus # 地球的“姐妹”行星 - Earth # 我们的家园 - Mars # 红色星球
# 流式有序节点序列gas_giants: !!seq [Jupiter, Saturn, Uranus, Neptune] # 外行星
ice_dwarfs_flow: - Pluto - Eris - Haumea解析后,这个 YAML 将生成一个数据结构,概念上类似于以下 JSON 数据结构:
{ "rocky_planets": [ "Mercury", "Venus", "Earth", "Mars" ], "gas_giants": [ "Jupiter", "Saturn", "Uranus", "Neptune" ], "ice_dwarfs_flow": [ "Pluto", "Eris", "Haumea" ]}选择块式还是流式通常取决于可读性和上下文。块式通常更适用于顶层序列或包含许多项的列表,而流式则方便用于短小、嵌入式的序列。