当前位置: 七九推 > IT编程>脚本编程>Python > Python生成短uuid的方法实例详解

Python生成短uuid的方法实例详解

2023年01月25日 Python 我要评论
python的uuid都是32位的,比较长,处理起来效率比较低,本算法利用62个可打印字符,通过随机生成32位uuid,由于uuid都为十六进制,所以将uuid分成8组,每4个为一组,然后通过模62操

python的uuid都是32位的,比较长,处理起来效率比较低,

本算法利用62个可打印字符,通过随机生成32位uuid,由于uuid都为十六进制,所以将uuid分成8组,每4个为一组,然后通过模62操作,结果作为索引取出字符,

最后生成的uuid,只有8位,代码如下:

 uuid4,可以换成uuid1

from uuid import uuid4
uuidchars = ("a", "b", "c", "d", "e", "f",
       "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s",
       "t", "u", "v", "w", "x", "y", "z", "0", "1", "2", "3", "4", "5",
       "6", "7", "8", "9", "a", "b", "c", "d", "e", "f", "g", "h", "i",
       "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v",
       "w", "x", "y", "z")
def short_uuid():
  uuid = str(uuid4()).replace('-', '')
  result = ''
  for i in range(0,8):
    sub = uuid[i * 4: i * 4 + 4]
    x = int(sub,16)
    result += uuidchars[x % 0x3e]
  return result
print(short_uuid())
print(short_uuid())
print(short_uuid())

 运行结果如下:

6vt7sxfk
f802fj8c
s7e3qzmd

总结

以上所述是小编给大家介绍的python生成短uuid的方法实例详解,希望对大家有所帮助

(0)
打赏 微信扫一扫 微信扫一扫

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2023  七九推 保留所有权利. 粤ICP备17035492号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com