Python - 如何创建一个8字节长的随机字符串?

时间:2012-07-21 15:17:57

标签: python

  

可能重复:
  python random string generation with upper case letters and digits

我需要在python中创建一个长度为8个字节的随机字符串。

rand_string = ?

我该怎么做?

由于

2 个答案:

答案 0 :(得分:21)

import os
rand_string = os.urandom(8)

会创建一个长度为8个字符的随机字符串。

答案 1 :(得分:5)

os.urandom正好提供了这个界面。

如果你想使用random模块(对于确定性随机性,或者因为平台碰巧没有实现os.urandom),你必须自己构建这个函数:

import random
def randomBytes(n):
    return bytearray(random.getrandbits(8) for i in range(n))

在Python 3.x中,您可以仅使用bytearray替换bytes,但在大多数情况下,bytearray的行为应该与bytes对象相同。