我正在尝试为列表编写自定义yaml lint规则。但是,我不知道如何仅从文件中获取列表
例如,如果我有以下文件:
变量1.yaml:
---
list1:
- list1value1
- list1value2
- list1value3
string1: this_is_a_string
bool1: true
list2:
- list2value1
- list2value2
- list2value3
变量2.yaml:
---
dict1:
dict1list1:
- dict1list1value1
- dict1list1value2
dict1bool1: false
bool2: true
list3:
- list3value1
- list3value2
- list3value3
list4:
- list4value1
- list4value2
那么我想要的是:
>>> for name, values in get_lists_from_yaml_file("variable1.yaml"):
print(name: values)
list1: ['list1value1', 'list1value2', 'list1value3']
list2: ['list2value1', 'list2value2', 'list2value3']
>>> for name, values in get_lists_from_yaml_file("variables2.yaml"):
print(name: values)
dict1list1: ['dict1list1value1', 'dict1list1value2']
list3: ['list3value1', 'list3value2', 'list3value3']
list4: ['list4value1', 'list4value2']
额外的好东西:声明列表的行号
一旦加载了yaml,我们就有了一个python dict。我们迭代dict项并检查哪个值是列表
试试下面的方法
输出
相关问题 更多 >
编程相关推荐