python读取yaml配置文件

yaml简介

1.yaml [?j?m?l]: Yet Another Markup Language :另一种标记语言。yaml 是专门用来写配置文件的语言,非常简洁和强大,之前用ini也能写配置文件,看了yaml后,发现这个更直观,更方便,有点类似于json格式

2.yaml基本语法规则:

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

3.yaml支持的数据结构有三种:

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

键值对(dict)

1.yaml里面的键值对,也就是python里面的字典(dict)数据类型,比如python里面的字典,用yaml如何去写

# python3.6

{

"user": "admin",

"psw": "123456,

}

在yaml文件里可以这样写:

# yaml

user: admin

psw: 123456

2.字典嵌套字典

# python3.6

"nb1": {

        "user": "admin",

        "psw": "123456,

        }

yaml文件里可以这样写:

# yaml

nb1:

    user: admin

    psw: 123456

    3.用python读取yaml文件案例如下,先用open方法读取文件数据,再通过load方法转成字典,这个load跟json里面的load是相似的。

    # coding:utf-8
    
    import yaml
    
    import os
    
    # 作者:上海-悠悠 交流QQ群:588402570
    
    # 获取当前脚本所在文件夹路径
    curPath = os.path.dirname(os.path.realpath(__file__))
    
    # 获取yaml文件路径
    
    yamlPath = os.path.join(curPath, "cfgyaml.yaml")
    
    # open方法打开直接读出来
    
    f = open(yamlPath, ‘r‘, encoding=‘utf-8‘)
    
    cfg = f.read()
    
    print(type(cfg))  # 读出来是字符串
    
    print(cfg)
    
    d = yaml.load(cfg)  # 用load方法转字典
    
    print(d)
    
    print(type(d))

    原文地址:https://www.cnblogs.com/btschang/p/10204949.html

    时间: 2024-11-07 01:30:45

    python读取yaml配置文件的相关文章

    Python读取Yaml文件

    近期看到好多使用Yaml文件做为配置文件或者数据文件的工程,随即也研究了下,发现Yaml有几个优点:可读性好.和脚本语言的交互性好(确实非常好).使用实现语言的数据类型.有一个一致的数据模型.易于实现. 既然有这么多好处,为什么不用呢,随后开始研究在Python中怎么读取Yaml文件,下面我们来看下: 1.首先需要下载Python的yaml库PyYAML,下载地址:http://pyyaml.org/,安装过程就省略...... 2.建立一个.py文件 3.import yaml 4.f = o

    Go语言之读取yaml配置文件,转换成struct结构,json形式输出

    1.例子1 1.1.yaml文件内容如下: host: localhost:3306 user: root pwd: 123456 dbname: test 1.2.代码如下: //将yaml文件,转换成对象,再转换成json格式输出 package main import ( "encoding/json" "fmt" "gopkg.in/yaml.v2" "io/ioutil" ) //定义conf类型 //类型里的属性,

    使用python读取yaml文件

    在做APP测试时,通常需要把参数存到一个字典变量中,这时可以将参数写入yaml文件中,再读取出来. 新建yaml文件(android_caps.yaml),文件内容为: 1 platformName: Android 2 platformVersion: '5.1' 3 deviceName: Android Emulator 4 appPackage: com.xx.xx 5 appActivity: com.xx.xx.activity.WelcomeActivity python读取yam

    Python + PyYAML 读取yaml配置文件数据

    一.首先我们需要安装 PyYAML 第三方库 直接使用 pip install PyYAML 就可以(这里我之前是装过的,所以提示我PyYAML已经在这个目录下了,是5.1.2版本的) 二.先看一下我的yaml配置文件中数据的格式. 特点: 1.大小写敏感 2.使用缩进表示层级关系 3.缩进的时候使用的是空格,不是tab键(因为在写python脚本的时候可能会习惯用tab键进行缩进,这里的缩进只能使用空格.只要同层级的对齐,空一格或者空两格都是没有关系的) 4.#号表示注释 (这不就是pytho

    Python读取ini配置文件

    db_config.ini [baseconf] host=127.0.0.1 port=3306 user=root password=root db_name=evaluting_sys [concurrent] processor=20 python代码 1 对应的python代码 2 import sys,os 3 import ConfigParser 4 5 class Db_Connector: 6 def __init__(self, config_file_path): 7 c

    python 读取ini 配置文件

    安装 pip install configparser 1 配置文件 config.ini: [MysqlDB]user=rootpasswd=123456sport=3306db_name=my_dbcharset=utf-8 获取参数: import configparser config = configparser.ConfigParser() config.read('config.ini') host=config['MysqlDB']['host'] host=config.get

    python读取配置文件 变量 ConfigParser模块

    Python 读取写入配置文件很方便,可使用内置的 configparser 模块配置文件:config.ini [oppo] platformName = Android platformVersion = 6.0 deviceName = weiruoyu appPackage = com.sina.weibo appActivity = .SplashActivity url = http://127.0.0.1:4723/wd/hub [mysql] host=127.0.0.1 por

    python接口自动化测试二十九:yaml配置文件的写和读

    # 先安装ruamel.yaml模块 写入配置文件: import os# 先安装ruamel.yaml模块from ruamel import yaml # 将字典写入到yamldict = { 'host1': '123', 'host2': '456', 'host3': '789', 'host4': '147', 'host5': {'asd': '123'} } curpath = os.path.dirname(os.path.realpath(__file__))yamlpath

    python读取配置文件的方式

    python读取配置文件的方式 1.从config.ini中读取,后缀无所谓,文件名字也无所谓,不过config.ini是常用写法,所谓见名知意 config.ini内容: [global] ip = xxx port = xxx table = xxx uname = xxx passwd = xxx 读取方法 import configparser import os dir_now = os.path.dirname(os.path.dirname(os.path.abspath("set