1

我想生成具有以下属性的字符串 id:

  1. 简短,最多 5-6 个 apha + 数字
  2. 随机的
  3. 独特的,渴望的,但不像第一个那么重要

目前我正在考虑:

  1. 使用https://developers.google.com/appengine/docs/python/datastore/functions#allocate_ids分配唯一 ID
  2. 用一些密钥对其进行哈希处理,md5(id + secret)
  3. 取前 5 个符号

有没有更好的办法?我也想过使用 datacenter_id + instance_id + request_id ,但我不知道它是否会更好。

4

1 回答 1

0

为什么不直接使用 random.choise 生成一个随机字符串?

for _ in xrange(5):
  yield random.choice(digits + alpha)

这有 36^5 个键的空间

于 2013-02-08T11:05:00.760 回答