单双引号交替的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. selenium - 截取页面图片和截取某个元素的图

    1.截取页面图片并保存 在测试过程中,是有必要截图,特别是遇到错误的时候进行截图. # coding:utf-8 from time import sleep from PIL import Imag ...

  2. Unidac手工安装

      Universal Data Access Components Source Code Copyright 1997-2010, Devart. All Rights ReservedThere ...

  3. MonGoDB问题笔记

    1. 最近出了一个问题,就是按日期查查不出来数据,经过折腾后发现,mongodb中的存储数据的日期格式与查询时使用的日期格式不匹配,导致查询出不来 //{"$and":[{ &qu ...

  4. Python函数的初识

    一   什么是函数 定义: 定义一个事情或者功能,等到需要用的时候直接用就可以了,那么这个定义的就是一个函数 函数  :  对代码块和功能的封装和定义 函数定义的格式:     def   函数名() ...

  5. js 判断浏览器类型大全

    /**** * 目前识别范围 * Microsoft Internet Explorer IE浏览器 * --> TheWorld 世界之窗 * --> TT浏览器 * --> 36 ...

  6. 异常:java.lang.IllegalStateException: Ambiguous handler methods mapped for HTTP path '/app/userInfoMaint/getProvince.do'

    调试代码时出现异常:java.lang.IllegalStateException: Ambiguous handler methods mapped for HTTP path '/app/user ...

  7. 关于项目报错Dynamic Web Module 3.0 requires Java 1.6 or newer 的解决方法

    起因:今天使用maven创建web项目的时候发现项目上老是有个红X,错误如下图所示,虽然项目能正常运行起来,但是LZ的强迫症发作,不弄掉就觉得心里不舒服,于是上网查了攻略,几经周折最终大功告成,现在就 ...

  8. Tornado之抽屉实战(3)--注册

    知识点应用:标签绑定事件,jQuery获取用户值-->AJAX发送数据-->后台路由系统-->业务逻辑处理-->ORM数据操作-->write返回-->AJAX回调 ...

  9. Spring总结一:Srping快速入门

    Sping是什么: Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用.Spring是于2003 年兴起的一个轻量级的J ...

  10. java基础之Socket编程概述以及简单案例

    概述: 用来实现网络互连的 不同的计算机上 运行的程序间 可以进行数据交互  也就是用来在不同的电脑间, 进行数据传输. 三大要素: IP地址: 设备(电脑,手机,ipad)在网络中的唯一标识. 组成 ...