我拥有大量数据,在循环中迭代true并按键附加值:
for q in my_dict:
output.append({"roomsCount": q['roomsCount'], "totalArea": float(q['totalArea']),
"floorNumber": q['floorNumber'],"price": int(q['bargainTerms']['price']), ...})
有时我得到: KeyError:'roomsCount'或 KeyError:'totalArea'等,如果密钥不存在。
如果此密钥不存在,我如何为任何密钥设置默认值?不重复尝试:除了我的每个键:值对
答案 0 :(得分:1)
如果此密钥不存在,我如何为任何密钥设置默认值?
dict.setdefault()方法可能就是您想要的方法:
d = {'hits': 10, 'gold': 5}
print( d.setdefault('weapons', 0) )
print( d.setdefault('hits', 10) )
答案 1 :(得分:0)
通过添加dict.get解决,感谢您的评论。我的代码
for q in mydict:
output.append(
{"roomsCount": q.get('roomsCount', 0), "totalArea": float(q.get('totalArea', 0)), "floorNumber": q.get('floorNumber',0),
"price": int(q.get('bargainTerms''price',0))...})