random模块的随机变换

random模块是个存在随机特性的模块.

产生随机小数:

random.random(1)#产生(0,1)之间的随机小数    发红包
random.uniform(1,3)#产生(1,3)之间的随机小数

产生随机整数:

random.randint(1,5)#产生[1,5]之间的随机整数    验证码
random.randrange(1,10,2)#产生[1,10)的随机奇数

随机选择一个返回:

random.choice([1,"aa",[4,5])            抽奖
random.sample([1,"aa",[4,5],2)#随机取列表中的两个

随机打乱顺序,在原列表基础上打乱:

lst = [1,2,3,"aaa",("wahaha","qqxing")        洗牌

random.shuffle(lst)

print(lst)

关于生成随机数字+字母验证码的程序:

def rand_code(n=6 , alph_flag = True):
    code = ''
    for i in range(n):
        rand_num = str(random.randint(0,9))
        if alph_flag:  #判断验证码是否是数字+字母的形式
            rand_alph = chr(random.randint(97,122))#利用字母对应的ascII码来随机取字母
            rand_alph_upper = chr(random.randint(65,90))
            rand_num = random.choice([rand_num,rand_alph,rand_alph_upper])
        code += rand_num
    return code

ret = rand_code(n = 4)
print(ret)
ret = rand_code(n = 6,alph_flag = Falsh)#表示显示6位随机纯数字验证码

猜你喜欢

转载自www.cnblogs.com/smile568968/p/9439537.html