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)