python把excel中的字符串带有null,通过eval转换成字典报错问题解决方法
最近在做自动化测试的时候需要从excel中读取断言数据并转换成字典,结果出现了一个错误:
原因是字符串中存在null值,无法转换为字典
解决方法一:
通过replace 方法把null替换成指定的字符串 XXX.replace('null','None')
data = '{"code":2,"msg":"无效的手机格式","data":null}' data1 = data.replace('null', 'None') data2 = (eval(data1)) print(data2)
方法一可以解决此问题,不过是新生成了一个变量存放更改后的值,原来的并未受影响
缺点:
需要重新生成一个变量存放处理后的值,占空间
方法二:使用json.loads进行转换
直接原地把null替换成了None,并把str类型转换成了dict类型,推荐使用第二种方法