hashlib 和loggin模块

Posted mengbin0546

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hashlib 和loggin模块相关的知识,希望对你有一定的参考价值。

 

1.摘要算法hashlib

1. md5加密

#1. 摘要算法

#md5加密算法  32位
import  hashlib
username ="alex"
md5_obj =hashlib.md5()
# md5_obj =hashlib.md5("加盐".encode("utf-8"))  #加盐操作.
# md5_obj =hashlib.md5(username.encode("utf-8"))  #加盐操作.
md5_obj.update(b"alex") #使用md5摘要算法对 alex进行摘要 必须是bytes类型进行摘要.
res =md5_obj.hexdigest()  #获取摘要的结果.
print(res)
#结果:534b44a19bf18d20b71ecc4eb77c572f


#sha1加密算法 40位
import  hashlib
md5_obj =hashlib.sha1()
md5_obj.update(b"alex") #使用md5摘要算法对 alex进行摘要 必须是bytes类型进行摘要.
res =md5_obj.hexdigest()  #获取摘要的结果.
print(res)
#结果 60c6d277a8bd81de7fdde19201bf9c58a3df08f4

2.文件校验操作

#2. 文件校验操作

with open("mengbin","rb") as f :
    md5_obj =hashlib.md5()
    md5_obj.update(f.read())
    res =md5_obj.hexdigest()
    print(res)
    #摘要结果为:c7d6ca99c0c7a9e5beb0431b98e5ff11


with open("mengbin","rb") as f :
    md5_obj =hashlib.md5()
    for line in f:
        md5_obj.update(line)
    res =md5_obj.hexdigest()
    print(res)
    #摘要结果为:c7d6ca99c0c7a9e5beb0431b98e5ff11

#结论:update操作可以在hexdigest之前执行多次,分次对一个长字符串进行校验 ,结果是对整个长字符串的摘要结果.

 

2.logging模块

#4. logging 模块
import logging

logging.basicConfig(level=logging.DEBUG) #设置等级 . 默认是warning往上的信息.

# DEBUG:root:debug message
# INFO:root:info message
# WARNING:root:warning message
# ERROR:root:error message
# CRITICAL:root:critical message


#调试
logging.debug("debug message")

#信息
logging.info("info message")

#警告
logging.warning("warning message")

#错误
logging.error("error message")

#严重错误
logging.critical("critical message")

 

3.logging案例

import logging

logging.basicConfig(level=logging.DEBUG,
                    format=%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s,
                    datefmt=%a, %d %b %Y %H:%M:%S,
                    filename=test.log,
                    filemode=a)

logging.debug(debug message)
logging.info(info message)
logging.warning(warning message)
logging.error(error message)
logging.critical(critical message)

技术分享图片

 

以上是关于hashlib 和loggin模块的主要内容,如果未能解决你的问题,请参考以下文章

loggin 模块及其单例模式

hash模块 hashlib 和hmac

Python学习---8.10包的使用及loggin模块

python----日志模块loggin的使用,按日志级别分类写入文件

模块 hashlib模块

第三十六篇 hashlib模块hmac模块和logging模块