python学习――――模块hashlib和json

时间:2022-12-25 22:37:47

模块:

模块实现某功能,是实现的所有代码的集合。

模块有两种存在方式,.py和文件夹

模块分为三种:

            自定义模块

            内置模块

            开源模块

内置模块

1、hashlib模块实现了一个通用的接口对许多不同的安全哈希和消息摘要算法。

包括的算法为SHA1SHA256SHA224SHA384SHA512MD5

import hashlib
#########md5##########
#调用hashlib里的md5()生成md5哈希对象
m = hashlib.md5()
#使用update()方法对字符串进行md5加密的更新处理。
m.update("admin")
#十六进制加密结果
print m.hexdigest()

#############sha1##################
m = hashlib.sha1()
m.update("admin")
print m.hexdigest()

#############sha224###############
m = hashlib.sha224()
m.update("admin")
print m.hexdigest()

#############sha256##############
m = hashlib.sha256()
m.update("admin")
print m.hexdigest()

###########sha384################
m = hashlib.sha384()
m.update("admin")
print m.hexdigest()

###########sha512################
m = hashlib.sha512()
m.update("admin")
print m.hexdigest()

以上的加密算法有时候会被通过撞车进行解密,这样就有必要进行自定义key来进行加密。

##########进行自定义key进行加密m = hashlib.md5("ewerfefer")m.update("admin")print m.hexdigest()

另外还有其它加密模块,例如:hmac和base64,详情见下面的网址:

https://docs.python.org/2/library/hashlib.html?highlight=hashlib#module-hashlib

2、JSON(javascript object nonation)是一种轻量级的数据交换格式,是一种理想的数据交换语言,易于人的编写和阅读,主要用于和服务器进行数据交换。

json用于字符串和python数据类型之间进行数据转换

json的方法有dump、dumps、load、loads

json.dumps对简单数据进行编码

import  jsonprint json.dumps(['foo',{'tom':12}])print json.dumps('\\')#对字典进行排序print json.dumps({'d':0,'a':1,'c':1},sort_keys = True)#json.dumps()将数据通过特殊的方法转换为所有语言都能认识的字符串print json.dumps({'name':'rain','sex':'F'})#json.dump()将数据通过特殊的方法转换为所有语言都能识别的字符串,并写入文件中with open('json_dump.txt','w') as f:    json.dump({'name':'rain','sex':'F'},f)

json.loads对简单数据进行解码

#####loads#######import jsonprint json.loads('["foo", {"bar":["baz", null, 1.0, 2]}]')print json.loads('{"name":"rain","sex":"F"}')