TOC

Python 随机模块

示例

import string
import random

CHARS1 = string.ascii_letters
CHARS2 = string.ascii_letters + string.digits

def get_random_string(len=5, chars=None):
    if not chars:
        chars = CHARS1
    return ''.join(random.choice(chars) for _ in range(len))

# python3
def get_random_bytes(len=5):
    return bytes(bytearray((random.randrange(256) for _ in range(len))))

# python2
def get_random_bytes(len=5):
    return ''.join(chr(random.randrange(256)) for _ in range(len))

其他 随机字节的方法:

import Cryptodome.Random
Cryptodome.Random.get_random_bytes(size)

In [15]: os.getrandom
Out[15]: <function posix.getrandom(size, flags=0)>

In [17]: os.urandom
Out[17]: <function posix.urandom(size, /)>