python - 带解码器的类似哈希的字符串缩短器
问题描述
我有一个非常长的字符串,我想将其缩短为一个较小的随机字符字符串,类似于哈希的作用。但是,我希望以后能够撤消它以阅读它。据我所知,哈希无法撤消,因此我以后无法阅读。
解决方案
您可以使用 Python 的内置压缩库zlib
>>> from zlib import compress, decompress
>>> original = 'A' * 1024
>>> len(original)
1024
>>> compressed = compress(original.encode('utf-8'))
>>> len(compressed)
17
>>> original == decompress(compressed).decode('utf-8')
True
请注意,原始字符串必须包含一些要有效压缩的模式。一般来说,熵 original
越多,时间越长compressed
。
推荐阅读
- matlab - 在图表上标记点 - matlab
- jquery - 如果选择下拉列表中的字段为空,则显示工具提示
- javascript - Vue - 致命错误:CALL_AND_RETRY_LAST 分配失败 - JavaScript 堆内存不足
- firebase-admin - 使用服务帐户密钥连接到 firebase admin sdk
- python - Tkinter/Pillow - 如何在与 Pillow 相同的地方制作 (0, 0)
- ios - Swift Firestore 删除嵌套在文档中的数组中的元素时出现问题
- three.js - 使用setTimeout时如何停止threejs动画?
- sql - 有没有办法根据某个列提取具有不同条件的不同列?
- rust - [Rust Enums]:如何从 rust 中的混合类型枚举中获取数据值?
- javascript - 使用 javascript 更新文本中的 html 百分比