数据库里面有时候需要不重复的id 来表示用户id,就像QQ号码一样。
如果简单用uuid来生成的话,生成64位,太长。
生成6到8位gid
def generate_gid():
gids = []
for number in range(100000, 10000000):
gids.append(number)
for gid in gids:
index0 = random.randint(0, len(gids) - 1)
index1 = len(gids) - 1
tmp = gids[index0]
gids[index0] = gids[index1]
gids[index1] = tmp
return gids.pop()速度还是可以的。
本文介绍了一种生成短且不重复的用户ID的方法,通过创建一个6到8位的全局唯一标识符(GID),避免了使用过长的UUID。该方法通过随机打乱预设的数字范围并从中选取一个数字作为GID。
2138

被折叠的 条评论
为什么被折叠?



