python+selenium自动化测试-12yaml数据配置

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_24601279/article/details/102675847

1、简介

YAML是一个可读性高,用来表达数据序列化的格式。最明显的特征是:以数据为中心,而不是以标记语言为重点,通过缩进程度的不同来表达层次结构式的数据结构。

其语法特点有:(1)大小写敏感(2)使用缩进表示层级关系(3)缩进时不允许使用Tab键,只允许使用空格(4)缩进的空格数目不重要,只要相同层级的元素左侧对齐即可

yaml下载地址:http://pyyaml.org/wiki/PyYAML。或者安装完python后,直接在cmd用‘pip install pyyaml’安装。

2、yaml数据类型

(1)纯量
数据最小的单位,不可以再分割。类似于Python中单个变量。

num: 1

(2)list数组
与Python的list数组结构类似,数组元素使用“-”开头,也可以根据缩进进行数组嵌套。

fruits: ['apple','pear']

(3)对象
对象的一组键值对,使用冒号结构表示。类似Python中的字典数据结构。

platformName: Android
platformVersion: 6.0.1

注意:冒号后面一定要有空格!
(4)数据嵌套
A、python写法:
{‘name’:‘Tom Smith’,‘age’:37,‘spouse’:{‘name’:‘Jane Smith’,‘age’:25},‘childern’:[{‘name’:‘Jimmy Smith’,‘age’:15},{‘name’:‘Jenny Smith’,‘age’:12}]}

B、yaml写法:
userInfo.yaml

userInfo.yaml
name: Tom
age: 35
spouse:
   name: Jane
   age: 25
childen:
   -name: Jimmy
    age:15
   -name: Jenny
    age: 12

3、yaml读取数据

from ruamel import yaml
#读取yaml文件
file=open('F:\\Python\\appium_advance\\yaml\\userInfo.yaml','r',encoding="utf-8")
data=yaml.load(file, Loader=yaml.RoundTripLoader)

print(data)
print(data['name'])
print(data['age'])

print(data['spouse'])
print(data['spouse']['name'])
print(data['spouse']['age'])

print(data['children'])#第一个孩子
print(data['children'][0]['name'])
print(data['children'][0]['age'])

print(data['children'][1]['name'])#第二个孩子
print(data['children'][1]['age'])

4、yaml修改数据

file1=open('F:\\Python\\appium_advance\\yaml\\userInfo.yaml','w',encoding="utf-8")
data['age']=36#修改数据age: 35
yaml.dump(data, file1, Dumper=yaml.RoundTripDumper)
file1.close()

部分文章粉丝可见。

猜你喜欢

转载自blog.csdn.net/qq_24601279/article/details/102675847
今日推荐