YAML Ain't Markup Language
和GNU一樣,YAML是一個遞歸着說“不”的名字。不同的是,GNU對UNIX說不,YAML說不的對象是XML。
YAML不是XML。
為什么不是XML呢?因為:
- YAML的可讀性好。
- YAML和腳本語言的交互性好。
- YAML使用實現語言的數據類型。
- YAML有一個一致的信息模型。
- YAML易於實現。
上面5條也就是XML不足的地方。同時,YAML也有XML的下列優點:
- YAML可以基於流來處理;
- YAML表達能力強,擴展性好。
總之,YAML試圖用一種比XML更敏捷的方式,來完成XML所完成的任務。
更多的內容及規范參見http://www.yaml.org。
YAML語法規則:
http://www.ibm.com/developerworks/cn/xml/x-cn-yamlintro/
Structure通過空格來展示。Sequence里的項用"-"來代表,Map里的鍵值對用":"分隔.
這幾乎就是所有的語法了.
一般YAML文件擴展名為.yaml。比如:John.yaml
yaml在python上的具體實現:PyYaml
將yaml寫成配置腳本test.yaml ,以下介紹如何讀寫yaml配置。
使用python的yaml庫PyYAML。http://pyyaml.org/
安裝到python lib下后就可以正常使用了。
一般YAML文件擴展名為.yaml。比如:John.yaml
name: John Smith age: 37 spouse: name: Jane Smith age: 25 children: - name: Jimmy Smith age: 15 - name: Jenny Smith age 12
John今年37歲,有一個幸福的四口之家。兩個孩子Jimmy 和Jenny活潑可愛。妻子Jane年輕美貌。
如果深入研究的話還可能發現一些社會問題。
可見YAML的可讀性是不錯。
更多參考:http://angeloce.iteye.com/blog/385976