json,hashlib,base64模块

一、json模块

json简介
全称"JavaScript Object Notation" (JavaScript对象表示法)它是一种基于文本,独立于语言的轻量级数据交换格式。以易于让人阅读的文字为基础,用来传输由属性值或者序列性的值组成的数据对象(键值对)

特点
1.轻量级的文本数据交换格式
2.易于人类阅读和编写,同时也易于机器解析和生成
3.Web世界当中最理想的数据交换格式

前后端数据交换
目前互联网开发前后端数据交互使用的基本都是json

在这里插入图片描述

Json语法规则
1.数据由键值对组成
2.键值对由逗号分隔
3.大括号里保存对象
4.中括号里保存数组

注意事项
1.字符串必须用双引号(即:””)来包括
2.值可以是字符串、数字、true、false、null、列表,或字典。

在这里插入图片描述

Json模块API
json.dumps(obj) ==>将python数据转化为json
Indent实现缩进,ensure_ascii 是否用ascii解析
json.loads(s) ==>将json数据转换为python的数据
json.dump(obj, fp) ==>转换为json并保存到文件中
json.load(fp) ==>从文件中读取json,并转化为python数据

二、hashlib模块

数据安全
数据时代,为了保证数据的安全性,防止数据泄露,往往会对数据进行加密,对于一些敏感数据 ,加密措施更加是令人发指。
加密是最常用的安全保密手段,利用技术手段把重要的数据变为乱码(加密)传送,到达目的地后再用相同或不同的手段还原(解密)。

概念:
对称加密:数据加密解密使用相同的密钥
非对称加密:加密和解密用两把不同的密钥, 公钥用于加密数据,私钥用于解密数据
单向加密:只能加密数据,而不能解密数据

Hash结构
HASH
散列函数,.一般翻译为哈希 ,把输入的任意长度的数据,通过散列函数进行转化,变成一个长度固定的值( 散列值),这个值基本是唯一的,简单来说,hash算法就是一种将任意长度的数据变成一个长度固定的数据的函数。

特点
1.不可逆:无法根据散列值来还原原来的数据
2.定长输出:无论输入的原始数据有多长,结果长度是相同的
3.抗修改性:输入的微小改变,哪怕只有一个字符,会引起结果的巨大改变
4.强碰撞性:很难找到两段内容不同的数据,使他们产生的hash值一致,几乎不可能

hashlib模块API

Hashlib模块提供了许多供我们调用的hash算法,主要有:
1.md5
2.SHA系列:sha1, sha224, sha256, sha384, sha512

在这里插入图片描述

简单使用

在这里插入图片描述

三、base64模块

base64
base64是一种用64个字符来表示任意二进制数据的方法,(将二 进制数据编码成ASCII字符)使用了A-Z,a-z,0-9,+ ,/这64个字符

特点:
1.用来将非ASCII字符的数据转换成ASCII字符的一种方法
2.常用于对URL的编码
3.可以将不可打印的二进制数据转化为可打印的字符串

base64模块API
Base64编码后的数据可能会含有 + / 两个符号,如果编码后的数据用于URL或文件的系统路径中,
就可能导致Bug,所以base模块提供了专门编码url的方法。

在这里插入图片描述

对字符串进行编码解码

在这里插入图片描述

对URL进行编码解码

在这里插入图片描述

总结

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值