pyyaml

  • yaml基本语法规则:

    • 大小写敏感
    • 使用缩进表示层级关系
    • 缩进时不允许使用Tab键,只允许使用空格。
    • 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可
    • #表示注释,从这个字符一直到行尾,都会被解析器忽略,这个和python的注释一样
  • yaml支持的数据结构有三种:

    • 对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary)
    • 数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)
    • 纯量(scalars):单个的、不可再分的值。字符串、布尔值、整数、浮点数、Null、时间、日期
  • 安装

    pip install pyyaml
    
  • 使用方法

    创建配置文件,示例:

    falcon_url: 'http://127.0.0.1:1988/v1/push'
    metric: 'cloud2falcon'
    step: 60
    period: 13
    cloud:
      - c_type: ALI
        resource: connect
        name: 'acs_express_connect'
        to_falcon_template: 'ali-connect'
        ak: 'xxx'
        sk: 'xxx'
        region: [{"name": 'cn-hangzhou', "site": 'ztwl'}]
        metric_list: ['IntranetRX','ReceiveBandwidth']
          
      - c_type: KSC
        resource: elb
        name: 'SLB'
        to_falcon_template: 'ksc-elb'
        ak: 'your access key'
        sk: 'your secret key'
        region: [{'name': 'cn-beijing-6', 'site': 'ksybj'}]
        metric_list: ['slb.bps.in','slb.bps.out']
    

    读取配置文件,示例:

    import yaml
    with open('config.yml', 'r') as ymlfile:
        cfg = yaml.load(ymlfile,Loader=yaml.FullLoader)
    
    for i in cfg["cloud"]:
        print i
    

你可能感兴趣的:(pyyaml)