验证码一般是由大小写字母及数字组成
import random ##添加随机模块
import string ##添加字符模块
code_str = string.ascii_letters + string.digits
所有的字母大写和小写 0-9数字
print(code_str)
code_str1 = string.ascii_lowercase ##所有字母的小写
print(code_str1)
code_str2 = string.ascii_uppercase ##所有字母的大写
print(code_str2)
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
abcdefghijklmnopqrstuvwxyz
ABCDEFGHIJKLMNOPQRSTUVWXYZ
在列表中随机选取元素
random.choice(列表) ## 随机在列表中选择一个元素
random.sample(列表,个数) ## 随机在列表中选择固定个数的元素
import random
import string
code_str = string.ascii_letters + string.digits
print(random.sample(code_str,4))
print(random.choice(code_str))
结果输出
['H', 'D', 'C', 'w']
1
生成10个6位数的验证码
方法1–函数
import random
import string
def fun():
code_str = string.ascii_letters + string.digits
s = ''.join([random.choice(code_str)for i in range(6)])
return s
result = [fun() for i in range(1000)]
print(result)
['7kA0mp', 'DTlQy6', '6ybO42', '9T91RY', 'Zzot5S', 'AmzawJ', 'yPwMUv', 'yXlZDO', '3NE9Dx', '8a5JCd']
方法2
import random
import string
code_str = string.ascii_letters + string.digits
s = [''.join(random.sample(code_str,6)) for k in range(10)]
print(s)
['c0vY2d', 'TDbwXy', 'gDOTKB', 'iG1Oup', 'hsaj6S', 'vYhdFT', 'ijmbzS', 'gvmBQS', 'dTk49R', 'mrqStv']