Python中random函数5种用法

使用random.randint随机生成验证码:

import random
#从一个字符串中随机生成若干个字符
def gen_code(n):
    s='er0dfsdfxcvbn7f989fd'
    code=''
    for i in range(n):
        r = random.randint(0,len(s)-1)
        code+=s[r]
    return code

def login():
    username=input("输入用户名:")
    passwd=input("输入密码:")
    code=gen_code(5)
    print("验证码是:",code)
    code1=input("输入验证码:")
    if code.lower() == code1.lower():
        if username=='knn' and passwd=='abc':
            print("Login success!")
        else:
            print("username or password error!")
    else:
        print("check code error!")

#调用函数
login()

使用random.choice方法:

def gen_code(n):
    s='er0dfsdfxcvbn7f989fd'
    code=''
    for i in range(n):
       r=random.choice(s)
       code=code+r
    return code

使用random.shuffle将列表内容打乱:

import random
code=''
str2=['df','11','88','ff']
random.shuffle(str2)
print(str2)

注意支持列表,不支持字符串

random.shuffle执行结果:
Python中random函数5种用法_第1张图片

使用random.randrange生成指定间隔的字符:

import random
str1='agdcdfghkjklerop23490'
str2=['df','11','88','ff']
r1=random.randrange(0,30,4)
r2=random.sample(str1,3)
print(r1)
print(r2)

结果:
在这里插入图片描述

random.sample方法:

从a-zA-Z0-9生成指定数量的随机字符:

import string
import random
r3 = ''.join(random.sample(string.ascii_letters + string.digits, 8))
print(r3)

结果:
Python中random函数5种用法_第2张图片

你可能感兴趣的:(运维技术,python)