codecamp

YAML 简介

YAML(YAML Ain't Markup Language)不是标记语言。而是一种数据序列化语言,它匹配用户对数据的期望。 

它旨在提供人性化的阅读体验,并与其他编程语言完美配合。

YAML对于管理数据非常有用,支持Unicode可打印字符。本章将介绍YAML及其功能。

格式

考虑下面显示的文字

Quick brown fox jumped over the lazy dog.

使用YAML文本将如下所示

yaml.load(Quick brown fox jumped over the lazy dog.)
>>'Quick brown fox jumped over the lazy dog.'

请注意,YAML采用字符串格式的值并表示上面的输出。

示例

参考下面的示例了解YAML中的格式

考虑以下浮点数“pi”,其值为3.1415926。 在YAML中,它表示为浮点数,如下所示 -

>>> yaml.load('3.1415926536')
3.1415926536

假设,多个值将加载到特定的数据结构中,如下所述

eggs
ham
spam
French basil salmon terrine

将其加载到YAML中时,值将采用数组数据结构,这是一种列表形式。 输出如下所示

>>> yaml.load('''
   - eggs
   - ham
   - spam
   - French basil salmon terrine
   ''')
['eggs', 'ham', 'spam', 'French basil salmon terrine']

特征

YAML包含具有重要构造的标记语言,以区分面向数据的语言和文档标记。YAML的设计目标和特征如下 - -匹配敏捷方法及其语言的数据结构,如:Perl,Python,PHP,Ruby和JavaScript等语言。

  • YAML数据可在编程语言之间移植
  • 包括数据一致的数据模型
  • 人类易于阅读
  • 支持单向处理
  • 易于实现和使用
YAML 基础
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }