python Python - 在YAML列表中搜索要更改或插入的值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python Python - 在YAML列表中搜索要更改或插入的值相关的知识,希望对你有一定的参考价值。
#!/usr/bin/python
import yaml, sys
if len(sys.argv) < 3:
print 'Usage: run.py <inputfile> <outputfile>'
print '<inputfile>: connector.yml'
print '<outputfile>: userConfigurations.yaml'
sys.exit()
key_name = 'packageId'
list_name = 'packages'
class MyDumper(yaml.Dumper):
"""
json list indenter fix
"""
def increase_indent(self, flow=False, indentless=False):
return super(MyDumper, self).increase_indent(flow, False)
output_file = sys.argv[2]
input_file = sys.argv[1]
x = yaml.load(open(output_file))
y = yaml.load(open(input_file))
for i, element in enumerate(x[list_name]):
if element[key_name] == y[0][key_name]:
x[list_name].pop(i)
x[list_name].append(y[0])
f = open(output_file, 'w')
f.write(yaml.dump(x, Dumper=MyDumper, default_flow_style=False))
f.close()
以上是关于python Python - 在YAML列表中搜索要更改或插入的值的主要内容,如果未能解决你的问题,请参考以下文章
python——Yaml
Python操作yaml文件
Python如何调用yaml文件中的参数来执行ssh命令
python读取yaml文件
01 python基础——python解析yaml类型文件
Python基础10--yaml文件的写法与使用