验证码一般是包括一些随机产生的数字或符号,请实现随机生成一组6位验证码的功能。
每个字符可以是大写字母、小写字母或数字,有且只能是这三种类型中的一种。
import string
import random
def upper():
return ''.join([random.choice(string.ascii_uppercase) for i in range(0,6)])
def lower():
return ''.join([random.choice(string.ascii_lowercase) for i in range(0,6)])
def num():
return ''.join([str(i) for i in [random.randint(0,9) for i in range(0,6)]])
if __name__ == '__main__':
print(random.choice([upper(), num(), lower()]))
检查后发现可以优化成一行代码
print(random.choice([''.join([random.choice(string.ascii_uppercase) for i in range(0,6)]),''.join([random.choice(string.ascii_lowercase) for i in range(0,6)]),''.join([str(i) for i in [random.randint(0,9) for i in range(0,6)]])]))
最后执行结果是一样的!
可以多润几次看看结果