random模块

#random 随机模块
import random

print(random.random()) #随机获取0到1的浮点数
print(random.uniform(1,4)) #随机选取1到1之间的浮点数

print(random.randint(1,4)) #随机获取[1,4]中的整型 可以去的值有1,2,3,4

print(random.randrange(1,5)) #随即获取[1,5)中的整型,可以取的值有1,2,3,4

print(random.choice((1,'jack',[1,2,3],{'name':'alex'}))) #随机选取列表或元祖里面的元素
print(random.sample([1,'jack',[1,2,3],{'name':'alex'}],2))#随机选取列表或元祖里面2个元素,2可以换成3,4

item = [1,23,4,56,7]
random.shuffle(item) #将列表中的顺序打乱
print(item)


a = [chr(x) for x in range(ord('a'),ord('z')+1)] #获取a到z的26个字母

a = list(map(chr,range(ord('a'),ord('z')+1))) #获取26个字母
print(a)


####验证码程序----方法 1
import random
def v_code():
tg = True
while tg:
a = [chr(x) for x in range(ord('a'),ord('z')+1)]
b = list(str(x) for x in range(0,10))
a += b #将b的值都加到a里面去
random.shuffle(a) #打乱a里面元素的顺序
d = '' #顶一个空字符串
c = random.sample(a,4) #任意抽取a中的4个元素,得到的是一个4个字符串的列表
for i in c: #将列表中的字符串一一加到d里面
d += i
w = input("验证码是%s \n请输入验证码:" %d)
if w.strip().lower() == d: #将输入的内容去空且变成小写
print('成功')
tg = False
else:
print('验证码错误,请重新输入')
continue
v_code()
#--------------------------------------------




#方法 2
import random
def v_code():
b = ''
for i in range(5):
num = str(random.randint(0,9))
a = random.choice([chr(x) for x in range(ord('a'),ord('z')+1)])

b += str(random.choice([num,a]))
return b
b = v_code()
print(b)

while True:
vv = input('输入验证码: ')
if vv.strip().lower() == b:
print('验证成功')
break
else:
print('验证码错误')
continue
posted @ 2018-04-11 11:24  阜阳小全  阅读(136)  评论(0编辑  收藏  举报