转自:君惜丶

简述

和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/
http://www.yaml.org/
语法
结构通过空格缩进来展示。列表里的项用"-"来代表,字典里的键值对用":"分隔.
这几乎就是所有的语法了.
比如……
一般YAML文件扩展名为.yaml。比如:yaml_example.yaml

将yaml写成配置脚本test.yaml ,以下介绍如何读写yaml配置。

开始使用

1.首先安装yaml模块

1 pip3 install pyyaml

2.编写yaml配置文件 yaml_example.yaml

 1 name: junxi
 2 age: 18
 3 spouse:
 4     name: Rui
 5     age: 18
 6 children:
 7     - name: Chen You
 8       age: 3
 9     - name: Ruo Xi
10       age: 2

3.编写解析yaml文件的python程序 yaml_example.py

1 import yaml
2
3 f = open('yaml_example.yaml')
4 content = yaml.load(f)
5 print(type(content))
6 print('before modification:', content)
7 content['age'] = 17
8 content['children'][1]['age'] = 1
9 print('after modification', content)

程序输出的结果为:

1 <type 'dict'>
2 ('before modification:', {'age': 18, 'spouse': {'age': 18, 'name': 'Rui'}, 'name': 'junxi', 'children': [{'age': 3, 'name': 'Chen You'}, {'age': 2, 'name': 'Ruo Xi'}]})
3 ('after modification', {'age': 17, 'spouse': {'age': 18, 'name': 'Rui'}, 'name': 'junxi', 'children': [{'age': 3, 'name': 'Chen You'}, {'age': 1, 'name': 'Ruo Xi'}]})

转载于:https://www.cnblogs.com/taolusi/p/9306264.html

Python的配置文件模块yaml的使用相关推荐

  1. Python 读写配置文件模块: configobj 和 configParser

    参考:http://www.voidspace.org.uk/python/configobj.html Python模块之ConfigParser - 读写配置文件:http://www.cnblo ...

  2. python 第三方模块 yaml - 处理 YAML (专门用来写配置文件的语言)

    markdown 的配置使用 Yaml -- Yet Another Markup Language :另一种标记语言. 简介 YAML 是专门用来写配置文件的语言,非常简洁和强大,远比 JSON 格 ...

  3. Python接口自动化之yaml配置文件

    VOL 119 04 2020-05 今天距2021年241天 这是ITester软件测试小栈第119次推文 点击上方蓝字"ITester软件测试小栈"关注我,每周一.三.五早上  ...

  4. 通过python的ConfigParse模块读写ini配置文件

    python读写配置文件ConfigParser模块是python标准库自带的读取配置文件的模块.通过他可以方便的读取配置文件.目前示例代码中的Python版本都是基于2.7版本 官网地址是,异常处理 ...

  5. hashlib摘要算法模块,logging日志,configparser配置文件模块

    一.hashlib模块(摘要算法模块) 1.算法介绍 Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等. 什么是摘要算法呢? 摘要算法又称哈希算法.散列算法.它通过一个函数,把 ...

  6. Python的日志模块logging的使用

    Python的日志模块logging的使用 1 logging模块介绍 2 logging 简单示例 3 logging.basicConfig() 4 logging组件 4.1 Logger类 4 ...

  7. python自动化常用模块_Python自动化 【第五篇】:Python基础-常用模块

    目录 模块介绍 time和datetime模块 random os sys shutil json和pickle shelve xml处理 yaml处理 configparser hashlib re ...

  8. python之 logging模块详细使用【转载】

    很多程序都有记录日志的需求,并且日志中包含的信息既有正常的程序访问日志,还可能有错误.警告等信息输出,python的logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志,主要用于输出 ...

  9. Python中Pyyaml模块的使用

    一.YAML是什么 YAML是专门用来写配置文件的语言,远比JSON格式方便. YAML语言的设计目标,就是方便人类读写. YAML是一种比XML和JSON更轻的文件格式,也更简单更强大,它可以通过缩 ...

最新文章

  1. 配置 腾讯云 SSL 证书 SSL证书实现https,环境:phpStudy下Apache环境
  2. 400 多行代码!超详细 Rasa 中文聊天机器人开发指南 | 原力计划
  3. android实现分类搜索功能,android应用中的搜索功能怎么实现的
  4. mysql实现gb18030转utf8_将编码是GB18030的小文件转为UTF8
  5. oracle新建用户和授权及其删除
  6. 切片器可以设置日期格式?_Excel智能表格——套用表格格式,“一键变身”
  7. ios AFNetworking 有用篇
  8. 思维习惯埋下的陷阱:在eVC中使用Slider、Spin等控件
  9. oracle工程师考试题,信息安全工程师考试练习试题及答案(三)
  10. Codeforces Round #310 (Div. 1) B. Case of Fugitive set
  11. Android 四大组件系列篇
  12. 数据挖掘与python实践心得体会_数据挖掘心得体会
  13. ffmpeg 处理字幕
  14. jstl.jar和standar.jar包下载
  15. 5G时代的到来会对UI交互设计产生什么影响?
  16. python爬取喜马拉雅音频
  17. 计算机网络-cisco选择题
  18. 【图文动画详解原理系列】1.MySQL 索引原理详解
  19. 2013-08-17 PMP错题记录(第七章)
  20. 数字芯片有哪些,以及它们的功能是什么?

热门文章

  1. qq html制作,jquery学习练习:制作QQ简易聊天框
  2. 头条号个人中心登录_头条号平台上线「插入小程序」功能
  3. python怎么下载安装mac_Mac下内置python2.7如何安装模块?
  4. 文件服务器缓存加速,存储缓存为文件传输提速
  5. charles代理手机调试_H5开发 移动端 调试之 Charles 抓包 和 Map Remote
  6. python所有的父类_object代表所有类的父类吗??
  7. java下标运算符_《Java从小白到大牛精简版》之第6章 运算符(下)
  8. AppScan api登录接口 postman_如何通过Postman调用EDI系统的API?
  9. 中等职计算机应用基础,中等职业计算机应用基础答案
  10. 输入文字自动生成图片_批量生成变化的图片文字海报