将整数ID转换为可读的非连续ID

readableID的Python项目详细描述


#可读id
[![Circleci](https://circleci.com/gh/nziehn/readableid.svg?style=svg)(https://circleci.com/gh/nziehn/readable id)


随着项目数量的增加重复!
-连续的数字不应创建连续的id

`` python
id_generator.generate_id(0)返回9mbe
id_generator.generate_id(1)返回qcah
````

此库不使用python std库之外的任何依赖项!


只需调用“generate\u id”方法:
``python
import readableid



for x in range(1000):
readable\u id=id\u generator.generate\u id(x)
print(readable\u id)
````

id
用作generate\u id方法的输入。



prime=readableid.default_prime,
xor=readableid.default_xor

````

``charset`控制允许的字符。此字符串有两个条件:
1。字符必须唯一
2。字符串长度必须是2的幂,例如8、16、32、64

库将在给定的“最小长度”中容纳尽可能多的项目ID,
但是如果您的项目数超出此数字,则ID将自动变长!

示例:使用默认参数,您可以将“32^4”项目ID调整为4个字符。
因此,如果使用任意数字“0<;=x<;32^4”调用“generate_id”,则将生成长度为4的ID。
从“32^4”开始,您将看到长度为5的ID!从“32^5”开始,您将看到长度为6的ID,依此类推。


如果要避免重复,关键是这是一个“素数”>;2!

如果您不确定-可以跳过更改此参数,而选择其他“xor”值!

`异或':

`异或'值允许您创建不同的数字序列,您可以选择`任意整数>;=0',
,但通常情况下,选择一个数字后会产生更大的效果:
`100<;x<;len(字符集)^最小长度'。更改“xor”的效果不如更改“prime”值大,
,但仍会创建相当不同的数字序列/

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

推荐PyPI第三方库


热门话题
java找不到当前线程的会话   同步Java同步方法调用非同步方法   这段代码的java时间复杂度是如何列出一个集合的所有子集的?   java Jetty SslConnectionFactory nextProtocol   为什么在java集合中使用游标而不是for循环   java如何对长函数进行单元测试?   如何从java中的文本输入创建数组   java工具栏内容未显示,尽管出现了片段内容   java MediaPlayer无法处理本地文件   java在多次读取时,从TCP服务器读取的数据将挂起   java组织。springframework。数据领域无法将PageImpl强制转换为   java如何使用@WithMockUser并从属性文件中传递用户名和密码?   JavaSpringBootGradle插件2。x如何使用自定义启动器布局工厂   sockets Java客户端和服务器之间使用字符串等进行通信的“行业标准”方法是什么   java变量引用不存在的资源:${project\u loc:project\u name}   搜索如何返回LDAP Java中所有用户的特定属性?   JDK1.8.016x的java密钥斗篷代理问题   spring如何使用Java中的Exchange获取邮件   java Kotlin+Dagger 2:Dagger*文件不会生成   如何在传入的double上执行操作,然后在Java中返回