我在返回JSON时遇到了一个错误,显然是因为字典的“0”,但是字典有这样的结构,我想有办法删除“0”,我留下下面的代码来了解这是否可行
d = json.loads('{ "jsonrpc": "2.0", "id": "1", "result": [ 0, {"ubus_rpc_session": "d8f4cec54d08c3f1d5581ec6135992e7","timeout": 300,"expires": 300,"acls": {"access-group": {"superuser": ["read","write"],"unauthenticated": ["read"]},"ubus": {"*": ["*"],"session": ["access","login"]},"uci": {"*": ["read","write"]}},"data": {"username": "root"}}]}')
#print d
for i in d["result"]:
if 'ubus_rpc_session' in i:
print i['ubus_rpc_session']
```
if 'ubus_rpc_session' in i:
TypeError: argument of type 'int' is not iterable
检查下面的代码,它是用python编写的,因此print还有其他语法
出现错误,因为键
'result'
的值是一个列表,而“ubus\u rpc\u session”是列表字典中的一个键。简单地说,该值类似于[int,dict]所以
d['result']
给出[int,dict..] 在第一次迭代中,您正在检查“ubus\u rpc\u session”是否为int,这是错误的(因此是TypeError
)。一个可能的解决方法是,删除int并只获取dict元素相关问题 更多 >
编程相关推荐