zoukankan      html  css  js  c++  java
  • Python-yaml文件处理

    一、什么是yaml文件

    二、后缀名:.yaml     /   .yml

    三、yaml支持哪些数据类型

    四、yaml编写格式语法规则

    五、yaml文件读取

    六、yaml写入数据

    一、什么是yaml文件

    YAML是一种灵活的数据格式,支持注释、换行符、多行字符串、裸字符等,在自动化过程中,我们很多地方都需要使用配置文件来储存数据,比如测试环境,数据库信息、账号信息、日志格式、日志报告名称等。其中,yaml文件是最常用的配置文件类型之一,相比较ini,conf配置文件来说,它更加简洁,操作更加简单,同时还可以存放下不同类型的数据。

    二、后缀名:.yaml     /   .yml

    三、yaml支持哪些数据类型

    • 对象
    • 数组
    • 纯量  字符串  数值   bool

    四、yaml编写格式语法规则

    • 大小写敏感
    • 使用缩进表示层级关系
    • 缩进用空格,相同的层级元素左对齐即可
    • #表示注释

    例:

    hello world
    username: admin
    passwd: admin123
    - 1
    - 2
    - 3
    - 4
    - sucessLogin:
        username: admin
        passwd: admin123
    - errorLogin:
        username: 123
        passwd: admin123

    五、yaml文件读取 :yaml.load -->反序列化,从文件流转化为python对象

    #安装第三方库:PyYAML
    
    import yaml
    
    
    with open('yaml1.yaml','r',encoding='utf-8') as file:
        #data = yaml.load(stream=file,Loader=None)  Loader为None时会被认为是不安全的
        data = yaml.load(stream=file,Loader=yaml.FullLoader)
    print(data)
    
    #执行结果:
    #helloworld
    
    #{'username': 'admin', 'passwd': 'admin123'}
    
    #[1, 2, 3, 4]
    
    #[{'sucessLogin': {'username': 'admin', 'passwd': 'admin123'}}, {'errorLogin': {'username': 123, 'passwd': 'admin123'}}]

    六、yaml写入数据: yaml.dump -->序列化:python对象转换为数据文件进行存储及传输

    dump_data =['中文','python','requests','pytest']
    
    with open('yaml1.yaml','w+') as file:
        yaml.dump(data=dump_data, stream=file, allow_unicode=True, encoding='utf-8')
    
    
    #执行结果:
    '''
    - 中文
    - python
    - requests
    - pytest
    '''
    三十六般武艺,七十二般变化,修练出个人品牌并发出光芒
  • 相关阅读:
    迭代器
    关于文章cisco漏洞4786
    Python学习目录
    Python的xml模块
    【JS30】Event Capture, Propagation, Bubbling and Once
    mysql安装
    CS193P 第四课笔记 · Hexo
    CSS变量
    在CentOS7上开启和挂载NFS共享
    《Android 编程实战》Chap5_重识IPC
  • 原文地址:https://www.cnblogs.com/deeptester-vv/p/15093860.html
Copyright © 2011-2022 走看看