python使用hashlib库运行MD5哈希算法

通过信息摘要算法,可以实现以下几个目标:

  1. 任意长度的输入,得到固定长度的输出
  2. 在任意环境中,都是相同的输入,相同的输出
  3. 极尽所能不要出现不同的输入,结果有重复的的输出

我们通过hashlib这个库可以实现这样的功能,其中MD5算法的使用流程是:

  1. 确定输入,将输入变为字符串(str)类型
  2. 确定编码str.encode("utf-8")
  3. 输出编码.hexdigest()

示例程序

py 复制代码
import hashlib

def get_md5_code(string):
    """获取MD5的字符串"""
    hash_md5 = hashlib.md5()  # 应用MD5算法
    hash_md5.update(str(string).encode("utf-8"))
    return hash_md5.hexdigest()

def main():
    data_info = {
        "name": "小明",
        "age": 20,
    }
    md5_code = get_md5_code(data_info)
    print(md5_code)

if __name__ == '__main__':
    main()
相关推荐
小龙报10 分钟前
《算法通关指南C++编程篇 --- 初阶函数递归专题》
c语言·开发语言·c++·算法·创业创新·学习方法·visual studio
程序员爱钓鱼10 分钟前
Python编程实战:用好 pdb 和 logging,程序再也不黑箱运行了
后端·python·trae
程序员爱钓鱼11 分钟前
Python编程实战:从 timeit 到 cProfile,一次搞懂代码为什么慢
后端·python·trae
拾忆,想起17 分钟前
Dubbo核心架构全解析:构建微服务通信的高速公路
java·微服务·云原生·架构·dubbo·哈希算法
2501_9411115119 分钟前
Python多线程与多进程:如何选择?(GIL全局解释器锁详解)
jvm·数据库·python
2501_9411113326 分钟前
使用Python处理计算机图形学(PIL/Pillow)
jvm·数据库·python
2501_9412366230 分钟前
分布式日志系统实现
开发语言·c++·算法
星轨初途31 分钟前
《数据结构二叉树之堆 —— 优先队列与排序的高效实现(2)(下)》
c语言·开发语言·数据结构·经验分享·笔记·性能优化
2501_9412355132 分钟前
C++与机器学习框架
开发语言·c++·算法
小小测试开发1 小时前
Python数据科学与图像处理利器组合:Prophet、Arch、Scikit-image、Pillow-heif用法全解析
图像处理·python·pillow