【发布时间】:2015-03-09 11:23:04
【问题描述】:
是否可以使用 if 语句更改 json 字典负载? 我有 4 种类型的 ID 分别为 1、2、3、4,所以我需要某种选择开关代码。
原代码为:
payload = {
"added": [
{
"assingedTargets": [
{
"sequencing": 1,
"name": assigned_target_name,
"id": assigned_target_id
}
],
"type": {
"protocol": {
"isDefaultProtocol": True,
"name": "tcp",
"id": 3,
"label": "tcp"
},
"name": target_type,
"id": int(1)
},
"name":"DDITargetGroup5"
}
]
}
我想做的是:
payload = {
"added": [
{
"assingedTargets": [
{
"sequencing": 1,
"name": assigned_target_name,
"id": assigned_target_id
}
],
"type": {
"protocol": {
"isDefaultProtocol": True,
"name": "tcp",
"id": 3,
"label": "tcp"
},
if target_type: == "direct dial"
"name": target_type,
"id": int(1)
elif target_type == "private Wire"
"name": target_type
"id": int(2)
},
"name":"DDITargetGroup5"
}
]
}
我得到错误:
if target_type: == "direct dial"
^
SyntaxError: invalid syntax
Process finished with exit code 1
【问题讨论】:
-
你想做的只是没有json。所以你不能在 json 中做到这一点。你真正想做的事情有点不清楚?
-
对我来说这看起来像一个 python 字典,而不是 JSON 字典。
"id": int(X)不是有效的 JSON,但它可能是有效的 python。