在python中通过requests.get(url)获取json数据,此时可能需要eval进行解析。

 # -*- coding: utf-8 -*-
import requests r = requests.get(url='your url address') # 最基本的GET请求
# print r.content
# print '......................'
# print len(r.json()
# print '......................'
# print len(r.json()['data'])
# print '......................'
print r.json()['data'][6]['type'] # area
print '......................'
print r.json()['data'][6]['radarcoor']
print '......................'
print r.json()['data'][6]['radarcoor'][0] # 错误
print '......................'
print eval("r.json()['data'][6]['radarcoor']")[0] # 错误
print '......................'
print eval("("+r.json()['data'][6]['radarcoor']+")")[0] # 正确的写法

此时r.json()返回:

r.json()['data'][6]['radarcoor']返回:

要获取其中每一项,则需要使用eval()函数进行解析:

2.json.dumps()

功能:将python中的数据类型转换成str类型

 # json.dumps()
mylist = [123, {'name': 'dragon'}, {'location': ('ch', 'nt')}]
encoded_json = json.dumps(mylist)
print isinstance(encoded_json, str) # True
print encoded_json # [123, {"name": "dragon"}, {"location": ["ch", "nt"]}] # json.loads()
# decoded_json = json.loads(encoded_json)
# print isinstance(decoded_json, list) # True
# print decoded_json # [123, {u'name': u'dragon'}, {u'location': [u'ch', u'nt']}] # eval()
decoded_json = eval(encoded_json)
print isinstance(decoded_json, list) # True
print decoded_json # [123, {'name': 'dragon'}, {'location': ['ch', 'nt']}]

python中eval()和json.dumps的使用的更多相关文章

  1. python中eval()和json.loads的区别

    一.最近在写接口测试脚本时,发现当读取Excel用例时,有时候要用eval,有时候又要用json.loads,不知道区别,只能换一下就可以用了,不知道其中的原理,特地百度了下.于是就记录了下,以便后续 ...

  2. 【转】python 历险记(四)— python 中常用的 json 操作

    [转]python 历险记(四)— python 中常用的 json 操作 目录 引言 基础知识 什么是 JSON? JSON 的语法 JSON 对象有哪些特点? JSON 数组有哪些特点? 什么是编 ...

  3. Python中eval与exec用法的区别

    Python中eval,exec这两个函数有着相似的输入参数类型和执行功能,因此在用法上经常出现混淆,以至经常用错,程序易抛出错误.下面主要通过这两个函数的语法来阐述区别,并用例子来进一步说明. 首先 ...

  4. python的eval和json.loads(),json.dumps()

    eval() 将字符串当成一个表达式去执行,可以想象成一个去字符串然后执行的操作. In [1]: s = '3*8' In [2]: eval(s) Out[2]: 24 eval()和json.l ...

  5. python将字符串转换成对应的python数据类型--eval和json.loads(),json.dumps()

    eval()和json.loads() 都可以将字符串转换成对应的python数据类型,举个字典的例子,同样适合其他数据类型元组.列表.集合. In [3]: ss = '{"a" ...

  6. Python关于eval与json在字典转换方面的性能比较

    背景介绍 因为python中有eval()方法,可以很方便的将一些字符串类型与字典等数据结构之间进行转换, 所以公司的数据处理同事在保存一些特殊数据时就直接将字典的字符串保存在数据库中. 在程序中读取 ...

  7. Python中字符串/字典/json之间的转换

    import json #定义一个字典d1,字典是无序的 d1 = { "a": None, "b": False, "c": True, ...

  8. python中精确输出JSON浮点数的方法

    有时需要在JSON中使用浮点数,比如价格.坐标等信息.但python中的浮点数相当不准确, 例如下面的代码: 复制代码代码如下: #!/usr/bin/env python import json a ...

  9. python接口自动化(九)--python中字典和json的区别(详解)

    简介 这篇文章的由来是由于上一篇发送post请求的接口时候,参数传字典(dict)和json的缘故,因为python中,json和dict非常类似,都是key-value的形式,为啥还要这么传参,在群 ...

随机推荐

  1. 2、Python程序控制结构(0530)

    条件测试: 1.if 条件测试表达式 python的比较操作 1.所有的python对象都支持比较操作 可用于测试相等性.相对大小等: 如果是符合对象,python会检查其所有部分,包括自动遍历各级嵌 ...

  2. SpringBoot war包部署到Tomcat服务器

    (1)pom.xml文件修改<packaging>war</packaging>,默认是jar包,<build>节点中增加<finalName>spri ...

  3. Lintcode449-Char to Integer-Naive

    Description Convert a char to an integer. You can assume the char is in ASCII code (See Definition, ...

  4. 基因组与Python --PyVCF 好用的vcf文件处理器

    vcf文件的全称是variant call file,即突变识别文件,它是基因组工作流程中产生的一种文件,保存的是基因组上的突变信息.通过对vcf文件进行分析,可以得到个体的变异信息.嗯,总之,这是很 ...

  5. CentOS6.5下搭建Samba服务实现与Windows系统之间共享文件资源

    FTP文件传输服务确实可以让主机之间的文件传输变得简单方便,但是FTP协议的本质是传输文件,而非共享文件,因此要想通过客户端直接在服务器上修改文件内容还是一件比较麻烦的事情. 1987年,微软公司和英 ...

  6. VMWare16安装windows7遇到的一些问题

    本人写这篇博客是为了记录了一些自己在使用VMware16安装Windows7时遇到的一些问题.本人使用的Windows7 ios镜像是小于4g的镜像. Windows7 ios的镜像地址为:https ...

  7. laydate控制之前的日期不可选择

    laydate.render({ elem: '#start_time', min:0, //,type: 'date' //默认,可不填 }); 只要加一个min参数,就可以控制了.0表示之前的日期 ...

  8. 使用python读取yaml文件

    在做APP测试时,通常需要把参数存到一个字典变量中,这时可以将参数写入yaml文件中,再读取出来. 新建yaml文件(android_caps.yaml),文件内容为: platformName: A ...

  9. Unity --- 如何降低UI的填充率

    1.首先简单介绍一下什么叫填充率: Fill Rate(填充率)是指显卡每帧或者说每秒能够渲染的像素数.在每帧绘制中,如果一个像素被反复绘制的次数越多,那么它占用的资源也必然更多.目前在移动设备上,F ...

  10. SpringBoot集成ActiveMQ

    前面提到了原生API访问ActiveMQ和Spring集成ActiveMQ.今天讲一下SpringBoot集成ActiveMQ.SpringBoot就是为了解决我们的Maven配置烦恼而生,因此使用S ...