码迷,mamicode.com
首页 > 编程语言 > 详细

Python之序列化和反序列化

时间:2020-04-09 00:54:32      阅读:86      评论:0      收藏:0      [点我收藏+]

标签:user   erer   返回   数据传输   windows   pytho   name   ike   定义   

一、序列化与反序列化的定义

序列化:把python的数据类型转换成json格式的字符串类型。

反序列化:把json格式的字符类型串转换成python的数据类型。

 

二、作用

为了数据传输,在接口测试发送请求时使用的是json格式的字符串,需要进行序列化,

在实际的接口返回数据中,有各种类型,需要进行反序列化为python的数据类型,然后使用。

 

三、python中的json模块

在python中,可以使用json模块中的方法进行序列化和反序列化操作。

import json

‘‘‘
字典的序列化与反序列化‘‘‘ dict1 = {name: jaffe, age: 18, other: {city: chongqing, doing: coding}} # 将字典转换为json格式的字符串,序列化 dict2_str = json.dumps(dict1) print(dict2_str, type(dict2_str)) # 将json格式的字符串转换为字典,反序列化 dict3 = json.loads(dict2_str) print(dict3, type(dict3)) #结果:{"name": "jaffe", "age": 18, "other": {"city": "chongqing", "doing": "coding"}} <class ‘str‘> #结果:{‘name‘: ‘jaffe‘, ‘age‘: 18, ‘other‘: {‘city‘: ‘chongqing‘, ‘doing‘: ‘coding‘}} <class ‘dict‘>

 

import json
import requests
import xmltodict

r
= requests.post(url=https://www.fxiaoke.com/FHH/EM0HUL/Authorize/PersonalCloudLogin?_fs_token=, headers={Content-type: application/json, referer: https://www.fxiaoke.com/pc-login/build/login.html, user-agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36, origin: https://www.fxiaoke.com}, json={phoneNumber: "18883928751", internationalAreaCode: "+86", rsaPassword: "STnWygTPdW2CaTWNzlBQrM/GK0tLrbZWfUa/Li4jmOCMZFZQvHgqvY/zecu/5uZnykgU512Tm50MAN3DEJ8/K7gL5AzZqdl/Z5jGxgYnu9HlWb8ti1C4FbMyQpgCvFYQXpG/Iod/jr2NHGAmjP64IenCnaUZ0AROo5tXOpdhcZc=", persistenceHint: true, publicKey: "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCROXqyCKxG8DrQKvrmdwiAHFJseaLHKsdzJ+61EpEGUawyLk5obn2Z2lyVVGjqT3KECk3DJtAD6Jux/m/gW2/lxspvhUO1YE1P8OZuUq5xhr/3AWuSSXCqLM2q6TEMnI2VE1BzlsRcxQVGVd4kGszzpyLXYS9ubFTTp1C2A+uZ1QIDAQAB"} ) print(r.status_code) # xml反序列化,先转换成json格式的字符串,再转换成字典 result = json.loads(json.dumps(xmltodict.parse(r.text))) print(result, type(result)) # 结果:{‘FHE‘: {‘Error‘: {‘@Code‘: ‘s311010023‘, ‘@Message‘: ‘需要图形验证码‘}, ‘Result‘: {‘@Status‘: ‘6‘}}} <class ‘dict‘>

 

Python之序列化和反序列化

标签:user   erer   返回   数据传输   windows   pytho   name   ike   定义   

原文地址:https://www.cnblogs.com/lengjf/p/12663811.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!