如何使用 python 格式化带有动态变量的 json 数据
How to format a json data with dynamic variable using python
我正在 Python 中动态准备 json 数据,这意味着 pass_over 可以更改
随时。我只是在下面提供了一个示例来修复它
每次我将测试器变量传递给 api 调用时,我得到的都是
valueError:格式说明符无效
这是我的代码
pass_over = '000067895'
tester = f'''{
"custId": {pass_over},
"acctStatusCriterion": [
{
"acctType": "YY",
"acctStatus": "Open"
},
{
"acctType": "VV",
"acctStatus": "Open"
},
],
"incExtAcctInfoFlag": true
}'''
我做错了什么?我不能在 python 中使用 f 字符串吗?这个json格式不对吗?
您的代码的问题在于方括号(所有方括号),f 字符串将其中的内容视为变量(它们用作格式说明符),而不仅仅是包含您打算更改的变量的变量。要解决这个问题,请在您希望忽略的所有内容中使用双括号,例如:
pass_over = '000067895'
tester = f'''{{
"custId": '{pass_over}',
"acctStatusCriterion": [
{{
"acctType": "YY",
"acctStatus": "Open"
}},
{{
"acctType": "VV",
"acctStatus": "Open"
}},
],
"incExtAcctInfoFlag": true
}}'''
print(tester)
输出:
{
"custId": '000067895',
"acctStatusCriterion": [
{
"acctType": "YY",
"acctStatus": "Open"
},
{
"acctType": "VV",
"acctStatus": "Open"
},
],
"incExtAcctInfoFlag": true
}
我正在 Python 中动态准备 json 数据,这意味着 pass_over 可以更改 随时。我只是在下面提供了一个示例来修复它 每次我将测试器变量传递给 api 调用时,我得到的都是
valueError:格式说明符无效
这是我的代码
pass_over = '000067895'
tester = f'''{
"custId": {pass_over},
"acctStatusCriterion": [
{
"acctType": "YY",
"acctStatus": "Open"
},
{
"acctType": "VV",
"acctStatus": "Open"
},
],
"incExtAcctInfoFlag": true
}'''
我做错了什么?我不能在 python 中使用 f 字符串吗?这个json格式不对吗?
您的代码的问题在于方括号(所有方括号),f 字符串将其中的内容视为变量(它们用作格式说明符),而不仅仅是包含您打算更改的变量的变量。要解决这个问题,请在您希望忽略的所有内容中使用双括号,例如:
pass_over = '000067895'
tester = f'''{{
"custId": '{pass_over}',
"acctStatusCriterion": [
{{
"acctType": "YY",
"acctStatus": "Open"
}},
{{
"acctType": "VV",
"acctStatus": "Open"
}},
],
"incExtAcctInfoFlag": true
}}'''
print(tester)
输出:
{
"custId": '000067895',
"acctStatusCriterion": [
{
"acctType": "YY",
"acctStatus": "Open"
},
{
"acctType": "VV",
"acctStatus": "Open"
},
],
"incExtAcctInfoFlag": true
}