嗨,我来自C#编程,对python很陌生,所以我不太了解语法,所以如果我犯了一些非常愚蠢的新手错误,请原谅我。
到目前为止,我编写的代码:
def main(name):
filename = "hostname_list.yaml"
hostname_list = { }
with open(filename) as infile:
hostname_list = yaml.safe_load(infile)
json.dumps(infile)
hostname_list = [s for s in hostname_list['sap_landscape'][name].items()]
print(hostname_list)它将YAML文件加载到字典中,然后遍历它以在字典中找到一个特定的键,然后用它的值打印这个键。
我得到以下输出(示例输出,略有更改,因此不会影响数据):
[('hostname', 'server3443'), ('SDI', 'T'), ('Type', 'Spo'), ('Land', 'DDD'), ('Severity', 'FTS'), ('Username', None), ('UserID', None), ('Global', None), ('Cycle', 2)]我现在需要这样的JSON格式的输出:
{"hostname": "server3443", "SDI": "T", "Type": "Spo", "Land": "DDD", "Severity": "FTS", "Username": None, "UserID": None, "Global": null, "Cycle": 1}如何实现此输出?从大约1,5周以来,我一直在努力寻找解决方案,到目前为止,我尝试过的都没有效果,我完全不知道该怎么做。。
提前感谢2月
发布于 2021-08-04 13:27:16
我不太熟悉那些图书馆,但是
hostname_list = [s for s in hostname_list['sap_landscape'][name].items()]..。创建列表对象的列表理解。试一试字典的理解:
hostname_list = {key:value for key, value in hostname_list['sap_landscape'][name].items()}https://stackoverflow.com/questions/68652067
复制相似问题