ymal语法

http常见的请求方式:

    • ymal的基本规则:
    • ymal的数据类型
    • ymal的数据结构
    • ymal数据结构的嵌套
    • python对ymal文件的操作

ymal的基本规则:

1.大小写敏感
2.使用缩进表示层级关系
3.禁止使用tab缩进,只是用空格缩进
4.缩进长度没有限制,只要元素对齐就代表一个层级
5.使用#表示注释
6.字符串可以不用引号标注

ymal的数据类型

下面是ymal语法对应的json
字符串:

#ymal
str:abc
str:'字符串'
#单双引号均可,双引号不会对特殊符号转义
s1: '内容\n字符串'
s2: "内容\n字符串"
#JSON
{
    str:'abc'
    str:'字符串'
    s1: '内容\\n字符串'
    s2: "内容\n字符串"
}

布尔值:

#ymal
isTrue: true
isTrue: false
#JSON
{
    isTrue: true,
    isTrue: false
}

数值:

#ymal
int:20
float:2.13
double:3.24
#JSON
{
    int:20,
    float:2.13,
    double:3.24
}

NULL值

#ymal
#null值用~表示
student:~
#JSON
{
    student:null
}

时间格式:

#ymal
#使用ISO8601格式表示
iso8601:2018-05-20t10:59:43.10-05:00
#JSON
{
    iso08601:new Date('2018-05-20t10:59:43.10-05:00')
}

日期:

#ymal
#使用ISO8601格式yyyy-MM-dd表示
data:2018-05-20
#JSON
{
    data:new Date('2018-05-20')
}

ymal的数据结构

1.Map,散列表
使用:表示键值对,统一缩进的所有键值对属于一个Map

#ymal
name: John
age: 18
#也可以写在一行
{ name: John, age: 18}
#JSON
{
    name: John,
    age:18
}

2.List,数组
使用-来表示数组中的一个元素

#ymal
- a
- b
- c
#也可以写在一行
[a, b, c]
#JSON
['a','b'.'c']

ymal数据结构的嵌套

1.Map嵌套Map

#YAML
websites:
 YAML: yaml.org 
 Ruby: ruby-lang.org 
 Python: python.org 
 Perl: use.perl.org 
#JSON
{ websites: 
   { YAML: 'yaml.org',
     Ruby: 'ruby-lang.org',
     Python: 'python.org',
     Perl: 'use.perl.org' } }

2.Map嵌套List

#YAML
languages:
 - Ruby
 - Perl
 - Python 
 - c
#JSON
{
     languages:['Ruby',
                'Perl',
                'Python',
                'c']
}

3.List嵌套List

#YAML
-
  - Ruby
  - Perl
  - Python 
- 
  - c
  - c++
  - java
#或者
- [Ruby,Perl,Python]
- [c,c++,java]
#JSON
[
    [
    'Ruby',
    'Perl',
    'Python'
    ],
    [
    'c',
    'c++',
    'java'
    ]
]

4.List嵌套Map

#ymal
-
  name: John
  age: 18
- 
  name: Lucy
  age: 16
#JSON
[
    {
        'name':'John',
        'age':18
    },
    {
        'name':'Lucy',
        'age':16
    }
]

python对ymal文件的操作


#这是一个ymal

name: Tom Smith
age: 37
spouse:
    name: Jane Smith
    age: 25
children:
  - name: Jimmy Smith
    age: 25
  - name1: Jenny Smith
    age1: 12
#这是读取yaml的py代码,用load方法
import yaml

pip install pyyaml
http://ansible-tran.readthedocs.io/en/latest/docs/YAMLSyntax.html
"""
f = open('test.yaml')
y = yaml.load(f)
print(y)

这是结果:{‘name’: ‘Tom Smith’, ‘age’: 37, ‘spouse’: {‘name’: ‘Jane Smith’, ‘age’: 25}, ‘children’: [{‘name’: ‘Jimmy Smith’, ‘age’: 25}, {‘name1’: ‘Jenny Smith’, ‘age1’: 12}]}

你可能感兴趣的:(接口测试)