使用 ruamel.yaml 读写 yaml 文档 Python 操作笔记

  1. 准备好 yaml 档.(人资.yaml)
    ChuaTony: 
      公司: 文传
      联络: 
        - 公司: '1422031030'
        - 手机: '18650144578'
        - 住家: '2233068479'
      住址: 
        - 公司: 褔建。
        - 住家: 台中。
      交通: 无
      附件: 
    Tom: 
      公司: 天褔
      联络: 
        - 公司: '1422031030'
        - 手机: '18650123456'
        - 住家: '2233061234'
      住址: 
        - 公司: 褔建。
        - 住家: 台北。
      交通: 自行车
      附件: 
  2. 先 copy 到 http://www.yamllint.com/ 做个检查.
  3. python 安装好 ruamel.yaml(支持 YAML 1.2)
    pip install ruamel.yaml

  4. 执行 Python 程式码:
    #!/usr/bin/env python3
    # -*- coding: utf-8 -*-
    
    ' a YAML module '
    
    __author__ = 'Chua Tony'
    
    import ruamel.yaml
    
    #开档
    with open("人资.yaml", "r",encoding="utf-8") as docs:
    	try:
    		alldata = ruamel.yaml.safe_load(docs)
    	except ruamel.yaml.YAMLError as exc:
    		print(exc)
    
    #印出
    for data in alldata:
    	print(alldata[data]['联络'])
    
    #修改
    alldata['Tom']['联络'][0]['公司']='963852741'
    
    #写档
    with open('人资1.yaml', 'w+', encoding='utf8') as outfile:
    	ruamel.yaml.dump(alldata, outfile, default_flow_style=False, allow_unicode=True)
  5. 打開(人资1.yaml)
    ChuaTony:
      交通: 无
      住址:
      - 公司: 褔建。
      - 住家: 台中。
      公司: 文传
      联络:
      - 公司: '1422031030'
      - 手机: '18650144578'
      - 住家: '2233068479'
      附件: null
    Tom:
      交通: 自行车
      住址:
      - 公司: 褔建。
      - 住家: 台北。
      公司: 天褔
      联络:
      - 公司: '963852741'
      - 手机: '18650123456'
      - 住家: '2233061234'
      附件: null




你可能感兴趣的:(使用 ruamel.yaml 读写 yaml 文档 Python 操作笔记)