Requests方法 --- json模块

1、Json 简介:Json,全名 JavaScript Object Notation,是一种轻量级的数据交换格式,常用于 http 请求中

2、可以用 help(json),查看对应的源码注释内容

Encoding basic Python object hierarchies::
>>> import json
>>> json.dumps([‘foo‘, {‘bar‘: (‘baz‘, None, 1.0, 2)}])
‘["foo", {"bar": ["baz", null, 1.0, 2]}]‘
>>> print json.dumps("\"foo\bar")
"\"foo\bar"
>>> print json.dumps(u‘\u1234‘)
"\u1234"
>>> print json.dumps(‘\\‘)
"\\"
>>> print json.dumps({"c": 0, "b": 0, "a": 0}, sort_keys=True)
{"a": 0, "b": 0, "c": 0}
>>> from StringIO import StringIO
>>> io = StringIO()
>>> json.dump([‘streaming API‘], io)
>>> io.getvalue()
‘["streaming API"]‘

3、Encode (python->json )
a、首先说下为什么要encode,python里面bool值是True和False,json里面bool值是true和 false,并且区分大小写,这就尴尬了,明明都是 bool 值。
在python里面写的代码,传到json里,肯定识别不了,所以需要把python的代码经过encode后成为 json 可识别的数据类型。
b、举个简单例子,下图中 dict 类型经过 json.dumps()后变成 str,True 变成了 true,False变成了 fasle
c、以下对应关系表是从 json 模块的源码里面爬出来的.python 的数据类,经过 encode 成
json 的数据类型,对应的表如下
| | Python | JSON |
| +===================+===============+
| | dict | object |
| +-------------- -----+---------------+
| | list, tuple | array |
| +-------------------+---------------+
| | str, unicode | string |
| +-------------------+---------------+
| | int, long, float | number |
| +-------------------+---------------+
| | True | true |
| +-------------------+---------------+
| | False | false |
| +-------------------+---------------+
| | None | null |
| +-------------------+---------------+

4、 decode(json->python)

a、以Requests方法 -- session方法 为例:{"success":true}为例,我们其实最想知道的是 success 这个字段返回的是 True 还是 False
b、如果以 content 字节输出,返回的是一个字符串:{"success":true},这样获取后面那个结果就不方便了
c、如果经过 json 解码后,返回的就是一个字典:{u‘success‘: True},这样获取后面那个结果,就用字典的方式去取值:result2["success"]
d、同样 json 数据转化成 python 可识别的数据,对应的表关系如下
| +---------------+-------------------+
| | JSON | Python |
| +===============+===================+
| | object | dict |
| +---------------+-------------------+
| | array | list |
| +---------------+-------------------+
| | string | unicode |
| +---------------+-------------------+
| | number (int) | int, long |
| +---------------+-------------------+
| | number (real) | float |
| +---------------+-------------------+
| | true |
True |
| +---------------+-------------------+
| | false | False |
| +---------------+-------------------+
| | null |
None |
| +---------------+-------------------+

原文地址:https://www.cnblogs.com/Teachertao/p/11144853.html

时间: 2024-07-31 13:11:06

Requests方法 --- json模块的相关文章

python的json模块的dumps,loads,dump,load方法介绍

#Auther Bob#--*--conding:utf-8 --*-- #jshon这个模块就是做序列化处理的,主要用到json模块的四种方法 #1.dumps#2.loads#3.dump#4.load #先介绍dumps方法#通过jshon的dumps的模块可以把特定的对象序列化处理为字符串# import json # l1 = [1,2,3,454]# d1 = {'k1':'v1'}# ret = json.dumps(l1)# print(type(ret))# ret = jso

python requests方法post请求json格式处理

方法如下: import requestsimport json data = {    'a': 123,    'b': 456} ## headers中添加上content-type这个参数,指定为json格式headers = {'Content-Type': 'application/json'} ## post的时候,将data字典形式的参数用json包转换成json格式.response = requests.post(url='url', headers=headers, dat

[ Python入门教程 ] Python中JSON模块基本使用方法

JSON (JavaScript Object Notation)是一种使用广泛的轻量数据格式,Python标准库中的json模块提供了一种简单的方法来编码和解码JSON格式的数据.用于完成字符串和python数据类型间进行转换. json模块基本函数   json.dumps():把Python数据类型转换成JSON字符串   json.loads():把JSON字符串转换成Python数据类型   json.dump():把Python数据类型转换成JSON字符串并存储在文件中   json

全局变量 urllib模块 json模块

1.vars()  查看一个.py文件中的全局变量 print(vars()) #重点 __name__': '__main__ '__file__': 'C:/Users/lenovo/PycharmProjects/老男孩/pppppppp.py' {'__spec__': None, '__name__': '__main__', '__builtins__': <module 'builtins' (built-in)>, '__file__': 'C:/Users/lenovo/Py

小贞贞python关于requests和tkinter模块项目实战

requests模块主要是用于网页的请求,获取相应数据 tkinter模块是python基于GUI的一个模块,大致模块如下: 具体可参照:https://www.cnblogs.com/shwee/p/9427975.html 今天给大家介绍,自制翻译小工具的具体项目实战: 整体是实现方式: 步骤一:通过requets模块请求百度翻译 步骤二:通过tkinter模块制作界面,将界面输入的内容传入requests模块,然后点击“翻译”按钮,显示requests模块返回的数据 步骤三:制作成一个ex

python json模块

一.json格式介绍 JSON格式是一种轻量级别的数据交换格式,容易被人识别和机器用来解析,它的全称叫做 JavaScript Object Notation. json模块提供了和pickle持久化模块相似的API接口,可以将内存中的Python对象转换为一个串行化表示,被叫作json.json最广泛的应用于AJAX应用中的WEB服务器和客户端之间的通信,也可以用于其它程序的应用中. 二.json模块编码 玩蛇网Leo在这里使用json.dumps方法,将一个Python数据类型列表进行jso

python对json的相关操作以及json模块的简要分析

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成. JSON有两种结构: 第一种就是"名称/值"对的集合.在python中相当于字典类型,在其他语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array). 第二种就是值的有序列表

Python基础(12)_python模块之sys模块、logging模块、序列化json模块、pickle模块、shelve模块

5.sys模块 sys.argv 命令行参数List,第一个元素是程序本身路径 sys.exit(n) 退出程序,正常退出时exit(0) sys.version 获取Python解释程序的版本信息 sys.maxint 最大的Int值 sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值 sys.platform 返回操作系统平台名称 5.1 使用sys.argv进行登录判断,跳过 i/o阻塞 #使用sys.argv进行登录判断,跳过 i/o阻塞 import s

json模块使用总结——Python

# 原创文章,未经允许请勿转载 通过Python的json模块,可以将字符串形式的json数据转化为字典,也可以将Python中的字典数据转化为字符串形式的json数据. 之前使用这个模块时,都是随用随查,浅尝辄止,对模块的功能了解不深. 随着使用次数的增加,我对这个功能完善的模块有了更多的了解,记录如下. 1.json字符串转为字典 json.load / json.loads 两个方法功能类似,可选参数也相同,最大的区别在于,json.load方法接受的输入,即第一个参数,是包含json数据