单双引号交替的json串

1.常见的json串,类似于这种{"isSucess":true, "name":"yoyo", "status": "200"},里面的key和value都是双引号。这种是可以用json模块里面的loads转成字典的

import json
a = '{"isSucess":true, "name":"yoyo", "status": "200"}' b = json.loads(a)
print(b)
print(type(b))

运行结果

{'isSucess': True, 'name': 'yoyo', 'status': ''}
<class 'dict'>

2.有时候返回的json数据并不是标准的双引号,里面key和value有单引号也有双引号,这种就比较坑了

{"isSucess":true, "result": '[{"name":"yoyo", "status": "200"}]'}

import json

c = '''{"isSucess":true, "result": '[{"name":"yoyo", "status": "200"}]'}'''
d = json.loads(c)
print(d)

直接这样用json去转,会报错:json.decoder.JSONDecodeError: Expecting value: line 1 column 29 (char 28)

3.解决办法

  • 先替换json串里面的true, false, null这种类型
f = '''{"isSucess":true, "result": '[{"name":"yoyo", "status": "200"}]'}'''
f1 = f.replace("true", "True").replace("false", "False").replace("null", "None")
print(eval(f1))
 

运行结果:

{'isSucess': 'True', 'result': '[{"name":"yoyo", "status": "200"}]'}

最新文章

  1. WIN API 擦除所绘图像
  2. 线段树---HDU1754 I hate it
  3. 解决tomcat开始出现in production environments was not found on the java.library.path:xxx
  4. python迭代器生成器(三)
  5. 安全框架Shiro入门
  6. 前端笔记---塌陷top
  7. django 1.10.3 admin后台管理设置显示中文
  8. Java的Random类详解
  9. 将DataTable中的数据一次性提交到数据库中
  10. jsoncpp
  11. Wireshark协议分析工具应用
  12. 斯坦福大学公开课机器学习:Neural Networks,representation: non-linear hypotheses(为什么需要做非线性分类器)
  13. js点击显示隐藏
  14. CH4908 Race
  15. Shiro:授权控制
  16. Context Application 使用总结 MD
  17. linux整合apache、php、mysql
  18. hdu1542 Atlantis (线段树+矩阵面积并+离散化)
  19. 第 0 课 Golang环境搭建
  20. C#原生压缩和解压缩方法

热门文章

  1. shell查看执行过程及时间变量
  2. Ubuntu14.04安装Matlab2014a
  3. MySQL for Linux错误: ERROR 1045 (28000): Access denied for user &#39;root&#39;@&#39;localhost&#39; (using password: YES)
  4. 【转】使用JMeter 完成常用的压力测试(一)
  5. php代码中临时开启错误调试
  6. 搭建httpd服务
  7. ctf中检测和分离隐藏的文件
  8. 处理大数据对象clob数据和blob数据
  9. Spring AOP面向切面编程详解
  10. Halcon学习之边缘检测函数