随机模块_random

random.seed(a) 设置种子, 若不穿参数, 就使用系统时间
种子相同, 每次生成的随机序列也相同
计算机生成的随机数都是伪随机数, 通过算法的出

li = []# 设置种子 random.seed(a=5) for i in range(10): li.append(random.randint(1, 10)) print(li) # [10, 5, 6, 9, 1, 8, 4, 1, 3, 2]li = []# 设置种子 random.seed(a=5) for i in range(10): li.append(random.randint(1, 10)) print(li) # [10, 5, 6, 9, 1, 8, 4, 1, 3, 2]# 结果随机数都是一样

random 随机获得0~1的小数
print(random.random())

randrange(start, end, setp) 【随机模块_random】随机获取指定范围内的整数
print(random.randrange(1, 10, 2))

randint(start, end) 随机获得指定范围内的整数, 能取到end
print(random.randint(1, 10))

uniform(start, end) 随机获得指定范围内的小数
# return a + (b-a) * self.random()# 1 <= x < 2 print(random.uniform(1, 2)) # -2 < x <= 5 print(random.uniform(5, -2))

choice 随机获得容器中的一个值
print(random.choice([1, 2, 4]))

sample 随机获得容器中的多个值, 返回列表
print(random.sample([1, 2, 4, 6, 8, 0], 3))

shuffle 随机打乱列表中的元素, 改变原列表
li = [1, 2, 4, 6] random.shuffle(li) print(li)

验证码
def yanzhengma(): strvar = '' for i in range(5): # 获取小写字母, 通过ascii schr = chr(random.randrange(65, 91)) # 获取大写字母 bchr = chr(random.randrange(97, 123)) # 获取数字0~9 num = str(random.randrange(10))strvar += random.choice([schr, bchr, num])

    推荐阅读