python-YAML文件

yaml文件:数据文件用于存储数据

yaml是一种灵活的数据格式,支持注释,换行,多行字符串等

支持跨平台跨语言,可以存放不同类型的数据

.yml或者.yaml后缀

二 yaml文件写入格式

1.语法规则

大小写敏感

使用缩进表示层级关系 相同层级的元素左侧对齐

#表示注释

2.yaml支持的数据类型

1.对象,纯量,比如字符串,整型

2.列表数据 开头加 - 如下:

yaml_list.yaml: 如下内容表示 data=['selenium','appium','pytest']

- selenium

- appium

- pytest

3.字典数据 键:值

键值对数据内容表示如下:

yaml_dict.yaml: 如下内容表示 data2={"username":"zhangsan,passwd":"123"}

username: zhangsan

paswd: 123

4.组合结构的数据

yaml_test.yaml:

- username: zhangsan

    passwd: 123

- username: lisi

   passwd: 456

- successlogin:

        username: zhangsan

        passwd: 123

- faillogin:

        username: lisi

        passwd:456

3.读取yaml文件数据

安装yaml, pip install pyyaml

import yaml

def read_yaml(filename):

        with open(filename,encoding="utf-8") as file:

                data=yaml.full_load(file)

                return data

if __name__='__main__':

        data=read_yaml("yaml_1.yaml")

        print(data)

        

4.对yaml文件常用操作

  1.Python的数据转化成yamla文件存储

   2.yaml文件数据转化成python数据

序列化:内存中的字典,列表,集合以级各种对象,把这些内存的数据保存到文件中

反序列化:从文件的字节序列恢复内存中,文件数据转化成python数据

def data_to_yaml(filename,data):

        with open(filename,"w+",encoding="utf-8") as file:

                yaml.dump(data=data,stream=file)

                

def yaml_to_data(filename):

        with open(filename) as file

               data = yaml.load(stream=file,Loader=yaml.FullLoader)

                return data

if __name__='__main__':  

        data={"userinfo":{"username":"zj","passwd":"123"},"ortherinfo":{"hobby":"ping-pang"}}

        yaml_to_data("file1.yaml",data)

你可能感兴趣的:(python,开发语言,后端)