关于python:python-如何创建一个8字节长的随机字符串?

Python - how to create a random string 8 bytes long?

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:
python random string generation with upper case letters and digits

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

1
rand_string = ?

我该怎么做?

谢谢


1
2
import os
rand_string = os.urandom(8)

将创建一个8个字符长的随机字符串。


os.urandom正好提供了这个接口。

如果您想使用random模块(对于确定性随机性,或者由于平台碰巧没有实现os.urandom,则必须自己构造函数:

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

在python 3.x中,您可以用bytes代替bytearray,但在大多数情况下,bytearray的行为应该类似于bytes对象。