人类可读的摘要表示法。

humanhash3的Python项目详细描述


humanhash提供了摘要的可读表示。

https://img.shields.io/travis/blag/humanhash.svghttps://img.shields.io/coveralls/blag/humanhash.svghttps://img.shields.io/pypi/v/humanhash3.svghttps://img.shields.io/pypi/l/humanhash3.svghttps://img.shields.io/pypi/pyversions/humanhash3.svg

示例

>>>importhumanhash>>>digest='7528880a986c40e78c38115e640da2a1'>>>humanhash.humanize(digest)'three-georgia-xray-jig'>>>humanhash.humanize(digest,words=6)'high-mango-white-oregon-purple-charlie'>>>humanhash.uuid()('potato-oranges-william-friend','9d2278759ae24698b1345525bd53358b')

注意事项

不要存储humanhash输出,因为它的统计唯一性只是 大约43亿分之一。它的预期用途是作为人类可读的(并且, 最重要的是,难忘的)较长摘要的表示, 在用户界面中显示的唯一性,用户可能需要 记住或口头传达散列的身份,而不必 记住40个字符的十六进制序列。尽管如此,你 应保留原始摘要,然后将其传递 humanize()仅当您显示它们时。

工作原理

生成humanhash的过程包括压缩输入 固定长度(默认值:4字节),然后映射这些字节中的每一个 到预定义单词列表中的单词(默认单词列表随 图书馆)。这个算法是一致的,所以相同的输入,给定 相同的单词表,总是给出相同的输出。你也可以使用 拥有wordlist,并为输出指定不同数量的单词。

灵感

  • Chroma-Hash-哈希的可视表示(尽管不是 一种可以在终端上输出,或在走廊上大声叫喊的装置)。
  • The NATO Phonetic Alphabet-一个很好的权衡例子 在人类交流的清晰性和字节效率之间 代表。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何修复尝试将用户签名到服务器主机时出现的“字符串无法转换为json对象”错误?   控制台Java:不使用新行更新命令行中的文本   java servlet接收xml数据时,出现错误   使用REST API在Bitbucket中复制或复制存储库   java如何在JavaFX中对齐一行?   java如何在活动中显示通过服务获得的数据?   返回BigDecimal作为字符串:返回int   java组织。openqa。硒。InvalidSelectorException:尝试查找元素时选择器无效   java仅在阻塞状态下通知和通知所有影响线程   java JBOSS无法启动部署   java方法的返回值能保证类型安全吗?   JavaeShadoop序列化组织。阿帕奇。hadoop。木卫一。短写失败   java如果我在同一个类上同步了两个方法,它们能同时运行吗?   不使用java数据库的spring分页实现   java如何将字符串切碎成这样的数组?