python 判断返回值是否是字典
背景:
小鱼最近再调一个小工程时,需要对返回值进行处理(返回值如下),有的返回值 有data1 有的没有;需要做个判断,判断是否含有该key值
1 返回值: 2 res1 = {"result":1,"data":{"data1":111}} 3 res2 = {"result":1,"data":111}
在网上查到,可以使用 res1["data"].keys() 判断 key值存不存在 ,但需要是 字典类型才可以;
如果 是res2["data"].keys() 就直接报错了;
换一种思路,先判断是否是字典,方法如下:
1 if isinstance(res2['data'],dict): 2 ...........
使用 isinstance(res2,dict) 方法可以解决以上问题
相应的判断如下
1 isinstance(res2,list) #list 2 isinstance(res2,tuple) #tuple 3 isinstance(res2,int) #int 4 isinstance(res2,str) #str