Python中有用于生成随机字符串的模块吗? [复制]

Posted

技术标签:

【中文标题】Python中有用于生成随机字符串的模块吗? [复制]【英文标题】:Is there any module in Python for generating random strings? [duplicate] 【发布时间】:2013-06-07 23:07:54 【问题描述】:

Python 中是否有任何模块用于生成随机字符串但必须是唯一的? 我需要生成密钥,例如在安装 Windows 时。

【问题讨论】:

对不起,忽略我之前的。你在找***.com/questions/534839/…吗? 要生成一个随机字节串(不一定是唯一的),你可以使用os.urandom(size)ssl.RAND_bytes(size) (Python 3.3) 提供强大的加密伪随机字节。 【参考方案1】:

如果你只想要字母,例如,这里的代码可以生成一个随机长度最大为 1000 的随机字符串:

out = ''
for i in range(random.random()*100):
    out += random.choice('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvqxyz')

您当然可以修改您的字母表。

【讨论】:

【参考方案2】:

由于你没有指定你想要获取的字符串的格式,我想没关系,所以我建议直接使用UUID。

>>> import uuid
>>> str(uuid.uuid4())
  > '3afc84bb-6d73-4482-806a-6b3a29e43bca'

【讨论】:

以上是关于Python中有用于生成随机字符串的模块吗? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

python-random模块

Python常用模块——random随机模块

python之random模块

怎么用python生成随机数?

python模块之random

常用模块学习random模块详解