标签:模块使用
md5加密 在python3的标准库中,已经移除了md5,而关于hash加密算法都放在hashlib这个标准库中,如SHA1、SHA224、SHA256、SHA384、SHA512和MD5算法等
在英语中hex有十六进制的意思,hexdigest()因此该方法是将hash中的数据转换成数据,其中只包含十六进制的数字
使用encode 防止对中文加密时出现乱码
方式一:对123456ling加密
import hashlib
m3 = hashlib.md5()
src = bytes("123456ling", encoding="utf-8")
m3.update(src)
print(m3.hexdigest())
方式二:123456 这个是随机数,通过加密后,再对ling加密,防止被破解
import hashlib
m3 = hashlib.md5("123456".encode("utf-8"))
src = bytes("ling", encoding="utf-8")
m3.update(src)
print(m3.hexdigest())
方式三:
作用:经常对文件进行IO的读写,现将放入内存中,提高性能
StringIO经常被用来作字符串的缓存,因为StringIO的一些接口和文件操作是一致的,也就是说同样的代码,可以同时当成文件操作或者StringIO操作
from io import StringIO, BytesIO
stringIO = StringIO()
stringIO.write("hello world\n") #写入内存中
stringIO.write("lalalalla, wo shi mai bao de xiao hang jia")
print(stringIO.getvalue()) #查看值
stringIO.truncate(0) #截断清空
print(stringIO.getvalue())
json模块提供了一种很简单的方式来编码和解码json格式的数据,其中两个主要的函数是json.dumps()和json.loads(),当然与之对应的还要json.dump()和json.load()函数
方法:
loads 把字符串-》python对象
dumps 把python对象-》 字符串
load 把文件-》 python对象
dump 把python对象 写入文件
方法一:json.dumps()
将一个Python数据结构转化为json:
import json
data ={
‘name‘: ‘thinkgamer‘,
‘age‘: 23,
‘sex‘: ‘men‘
}
print(json.dumps(data))
print(type(json.dumps(data)))
print(type(data))
结果:
import json
data ={
‘name‘: ‘thinkgamer‘,
‘age‘: 23,
‘sex‘: ‘men‘
}
print(json.dumps(data))
print(type(json.dumps(data)))
print(type(data))
方法二:json.loads()
import json
data ={
‘name‘: ‘thinkgamer‘,
‘age‘: 23,
‘sex‘: ‘men‘
}
str_tmp=(json.dumps(data))
print(json.loads(str_tmp))
print(type(json.loads(str_tmp)))
结果:
{‘name‘: ‘thinkgamer‘, ‘age‘: 23, ‘sex‘: ‘men‘}
<class ‘dict‘>
方式三:json.dump() 将对象写入文件
import json
data ={
‘name‘: ‘thinkgamer‘,
‘age‘: 23,
‘sex‘: ‘men‘
}
with open(‘user.txt‘,‘w‘) as fd:
json.dump(data,fd)
方式四:json.load() 从文件中读取
import json
data ={
‘name‘: ‘thinkgamer‘,
‘age‘: 23,
‘sex‘: ‘men‘
}
with open(‘user.txt‘) as fd:
date_json=json.load(fd)
print(date_json)
print(type(date_json))
结果:
{‘name‘: ‘thinkgamer‘, ‘age‘: 23, ‘sex‘: ‘men‘}
<class ‘dict‘>
python2的环境下:
In [143]: import json
In [144]: a = dict(hello="你好")
In [145]: print(a)
{‘hello‘: ‘\xe4\xbd\xa0\xe5\xa5\xbd‘}
In [146]: print(a["hello"])
你好
In [147]: print(str(a))
{‘hello‘: ‘\xe4\xbd\xa0\xe5\xa5\xbd‘}
In [148]: print(json.dumps(a, ensure_ascii=False))
{"hello": "你好"}
标签:模块使用
原文地址:http://blog.51cto.com/jacksoner/2108570