pyyaml

作者: liangml | 来源:发表于2019-04-15 10:45 被阅读0次
    • 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

          本文链接:https://www.haomeiwen.com/subject/xfnywqtx.html