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


Posted in Python onMay 29, 2018

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的方法实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
python实现监控linux性能及进程消耗性能的方法
Jul 25 Python
Python中实现结构相似的函数调用方法
Mar 10 Python
Python运算符重载用法实例
May 28 Python
Python简单连接MongoDB数据库的方法
Mar 15 Python
对PyQt5中树结构的实现方法详解
Jun 17 Python
Python何时应该使用Lambda函数
Jul 02 Python
python如何统计代码运行的时长
Jul 24 Python
python实现while循环打印星星的四种形状
Nov 23 Python
Python socket处理client连接过程解析
Mar 18 Python
Python使用os.listdir和os.walk获取文件路径
May 21 Python
python用700行代码实现http客户端
Jan 14 Python
Python scrapy爬取起点中文网小说榜单
Jun 13 Python
Python(TensorFlow框架)实现手写数字识别系统的方法
May 29 #Python
Python实现的多进程和多线程功能示例
May 29 #Python
Python实现的redis分布式锁功能示例
May 29 #Python
Python计算一个给定时间点前一个月和后一个月第一天的方法
May 29 #Python
PyTorch CNN实战之MNIST手写数字识别示例
May 29 #Python
Python根据指定日期计算后n天,前n天是哪一天的方法
May 29 #Python
python 将md5转为16字节的方法
May 29 #Python
You might like
深入解析php模板技术原理【一】
2008/01/10 PHP
php自定义错误处理用法实例
2015/03/20 PHP
php动态生成版权所有信息的方法
2015/03/24 PHP
Laravel框架分页实现方法分析
2018/06/12 PHP
PHP PDOStatement::setAttribute讲解
2019/02/01 PHP
轻量级 JS ToolTip提示效果
2010/07/20 Javascript
JS获取图片实际宽高及根据图片大小进行自适应
2013/08/11 Javascript
javascript判断两个IP地址是否在同一个网段的实现思路
2013/12/13 Javascript
编写自己的jQuery提示框(Tip)插件
2015/02/05 Javascript
简介JavaScript中toTimeString()方法的使用
2015/06/12 Javascript
JavaScript实现动态删除列表框值的方法
2015/08/12 Javascript
理解javascript封装
2016/02/23 Javascript
Node.js中防止错误导致的进程阻塞的方法
2016/08/11 Javascript
AngularJS教程之MVC体系结构详解
2016/08/16 Javascript
微信小程序 progress组件详解及实例代码
2016/10/25 Javascript
Jquery循环截取字符串的方法(多出的字符串处理成"...")
2016/11/28 Javascript
jquery获取input type=text中的值的各种方式(总结)
2016/12/02 Javascript
在javaScript中检测数据类型的几种方式小结
2017/03/04 Javascript
jq源码解析之绑在$,jQuery上面的方法(实例讲解)
2017/10/13 jQuery
基于dataset的使用和图片延时加载的实现方法
2017/12/11 Javascript
js实现上传并压缩图片效果
2018/01/10 Javascript
vue: WebStorm设置快速编译运行的方法
2018/10/18 Javascript
详解关闭令人抓狂的ESlint 语法检测配置方法
2019/10/28 Javascript
使用Typescript和ES模块发布Node模块的方法
2020/05/25 Javascript
iview实现图片上传功能
2020/06/29 Javascript
Python中矩阵库Numpy基本操作详解
2017/11/21 Python
python 获取图片分辨率的方法
2019/01/08 Python
python线程的几种创建方式详解
2019/08/29 Python
python分布式爬虫中消息队列知识点详解
2020/11/26 Python
澳大利亚潮流尖端的快时尚品牌:Cotton On
2016/09/26 全球购物
Lookfantastic日本官网:英国知名护肤、化妆品和头发护理购物网站
2018/04/21 全球购物
德国户外商店:eXXpozed
2020/07/25 全球购物
香港百佳网上超级市场:PARKNSHOP.com
2020/06/10 全球购物
安全生产计划书
2014/05/04 职场文书
夫妻分居协议书范本
2014/11/28 职场文书
2015年乡镇妇联工作总结
2015/05/19 职场文书