单双引号交替的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"}]'}

python 单双引号交替的json串的更多相关文章

  1. python笔记22-literal_eval函数处理返回json中的单双引号

    前言 在做接口测试的时候,最常见的接口返回数据就是json类型,json类型数据实际上就是字串,通常标准的json格式是可以转化成python里面的对应的数据类型的 有时候开发返回的数据比较坑,不按常 ...

  2. json包含单双引号问题解决方案

    解决方案:在后台处理 JSONArray.fromObject(list).toString() 转自明明如月小角落: 效果DEMO: JsonQuotesUtil.js /** * 解决json传输 ...

  3. java——String、StringBuffer、StringBuilder、包装类、单双引号

    String: String是一个特殊的类,被定义为final类型,为字符串常量,同样的字符串在常量池中不能重复. 但是由于使用关键字new创建新的字符串,java会在对中分配新的空间,这样即使字符串 ...

  4. php单双引号

    1.定义字符串 定义字符串时,只有一种引号被视为定义符,即单引号或双引号.于是,如果一个字符串由双引号开始,那么只有双引号被分析器解析.这样,你就可以在双引号串中包含任何其他字符,甚至单引号.下面的引 ...

  5. Python 中单双引号

    TODO, 在python中, 其实单双引号还是有分别的, 具体是什么?

  6. sql语句的单双引号问题

    $current_account_url='<a class="mini-button" iconcls="icon-edit" onclick=&quo ...

  7. JS中反斜杠和单双引号的配合使用效果

    <div id="tag"></div> <div id="tag1"></div> <div id=&q ...

  8. php中alert弹出时单双引号问题

    php代码中单双引号问题是个很重要的问题,使用不当会造成很多麻烦.先记录一下今天写alert遇到的麻烦.我做登录的时候,成功时想弹出个提示说登录成功.写alert语句时不显示.其实就是单双引号弄得不对 ...

  9. JS中字符串拼装 单双引号的处理 字符转义

    js中可能会用到动态追加元素,可能数据也是从后台传过来的,当然有两种思路, 1.在后台拼装好直接返回; 2.在前台js里面拼装, 如果拼装大量的html时可能单双引号就容易出问题;那么如何解决呢?最近 ...

随机推荐

  1. windows下通过Git Bash使用Git常用命令

    Git跟SVN最大不同的地方就是分布式.SVN的集中式与Git的分布式决定各自的业务场景.既然是分布式的,那么大部分操作就是本地操作.一般Git操作都是通过IDE,比如Eclipse,如果装了Git ...

  2. Oracle LSNRCTL------监听器的启动和关闭

    对于DBA来说,启动和关闭oracle监听器是很基础的任务,但是Linux系统管理员或者程序员有时也需要在开发数据库中做一些基本的DBA操作,因此了解一些基本的管理操作对他们来说很重要. 本文将讨论用 ...

  3. JS Date日期

    //日期属性var td = new Date(); alert( "getDate():" +td.getDate()+"\n" + "getDay ...

  4. Linux安装JRE tomcat配置java环境

    安装JRE 到http://www.oracle.com/technetwork/java/javase/downloads/index.html下载JRE软件. 1.wget http://down ...

  5. 海外开发者推荐:10个顶级2D游戏资源站

    转自:http://www.gamelook.com.cn/2015/12/239038 Gamelook报道/随着手游市场的持续增长,HTML5的发展以及大型发行商的支持,2D游戏的数量变得越来越多 ...

  6. Windows Media Player 打不开怎么办

    1. 右键VS工具箱的空白处; 2. 打开工具箱, 选择com组件→找到windows media player 3. 如果这里没有发现 windows Media Player怎么办? , 以win ...

  7. 使用QuartZ.net来做定时计划任务 ; 值不能为 null。 参数名: assemblyString

    1. 当异常的时候, 发现需要的类名, 没有取到, 然后就发生异常了 2. 分析: 业务层调用数据层, 数据层去掉配置的时候, 发现配置文件中根本就没有配置, 这个时候使用反射来取, 肯定是拿不到的, ...

  8. python学习(三) 使用字符串

                                                                                               第三章 使用字符串 ...

  9. linux平台总线驱动设备模型之点亮LED

    这一节里,我们来使用平台驱动设备这一套架构来实现我们之前使用简单的字符设备驱动点亮LED,这里并无实际意义,只是告诉大家如果编写平台总线驱动设备. 问:如何编写平台总线驱动设备这一套架构的设备驱动? ...

  10. Bash脚本编程总结

    bash脚本编程之用户交互: read [option]… [name …]  -p ‘PROMPT’  -t TIMEOUT bash -n /path/to/some_script  检测脚本中的 ...