gpt4 book ai didi

python - 字符串格式 JSON 字符串给出 KeyError

转载 作者:IT老高 更新时间:2023-10-28 12:52:54 25 4
gpt4 key购买 nike

为什么这段代码会给出一个KeyError

output_format = """
{
"File": "{filename}",
"Success": {success},
"ErrorMessage": "{error_msg}",
"LogIdentifier": "{log_identifier}"
}
"""

print output_format.format(filename='My_file_name',
success=True,
error_msg='',
log_identifier='123')

错误信息:

KeyError: ' "File"'

最佳答案

你需要把外大括号加倍;否则 Python 认为 { "File".. 也是一个引用:

output_format = '{{ "File": "{filename}", "Success": {success}, "ErrorMessage": "{error_msg}", "LogIdentifier": "{log_identifier}" }}'

结果:

>>> print output_format.format(filename='My_file_name',
... success=True,
... error_msg='',
... log_identifier='123')
{ "File": "My_file_name", "Success": True, "ErrorMessage": "", "LogIdentifier": "123" }

如果您正在生成 JSON 输出,最好使用 json module :

>>> import json
>>> print json.dumps({'File': 'My_file_name',
... 'Success': True,
... 'ErrorMessage': '',
... 'LogIdentifier': '123'})
{"LogIdentifier": "123", "ErrorMessage": "", "Success": true, "File": "My_file_name"}

注意输出中的小写 true,按照JSON标准的要求。

关于python - 字符串格式 JSON 字符串给出 KeyError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16356810/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com