Python二级备考笔记2 随机验证码

1 随机验证码

类型:Python 程序控制结构‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬


参照代码模板完善代码,实现下述功能。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬

利用 random 随机库里的函数,生成一个由四个大小写字母组成的验证码,显示在屏幕上。 ‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬

示例1:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬

输入:无
输出:"ESaY"

已给代码:

#在_____处填写一行代码
#在…处填写多行代码
#不允许修改其他代码

import random as r
zmb = 'AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz'
r.seed(1)
…
print(code)

1.1 代码

#在_____处填写一行代码
#在…处填写多行代码
#不允许修改其他代码

import random as r
zmb = 'AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz'
r.seed(1)
code = ''
for i in range(4):
    code = code + r.choice(zmb)
print(code)

2.1 random库(随机库)

2.1.1 seed(随机数种子)

描述

为了能够确定输出的随机数,而设定的一个种子(值),只要种子相同,输出的随机数就相同。初始化随机数种子,默认值为当前系统时间

语法

seed(a = None)

返回值

例子

from random import *
print(randint(0,100))
seed(1)
print(randint(0,100))

我们将该代码运行三次看看结果

35
17
100
17
59
17

不难看出,没有设置随机数种子的第一个输出,每一次的输出都不相同(也有极小的可能相同);而第二个设置了随机数种子的输出则每一次的输出结果都是固定的。

2.1.2 random()

描述

生成一个[0.0,1.0)之间的随机小数

语法

random()

返回值

一个[0.0,1.0)之间的随机小数

2.1.2 randint(begin,end)

描述

生成一个[begin,end]之间的整数

语法

randint(begin,end)

参数

begin--随机范围的最小值

end--随机范围的最大值

返回值

一个[begin,end]之间的整数 

 2.1.3 getrandbits(length)

描述

生成一个length比特长度的随机整数

语法

getrandbits(length)

参数

length--一个整数,代表所返回的比特长度

返回值

一个length比特长度的随机整数

2.1.4 uniform(begin,end)

描述

生成一个[begin,end]之间的小数

语法

uniform(begin,end)

参数

begin--随机范围的最小值

end--随机范围的最大值

返回值

一个[begin,end]之间的小数

2.1.5 randrange(start,stop[,step])

描述

生成一个[start,stop)之间以step为步数的随机整数

语法

randrange(start,stop[,step])

参数

start--随机范围的最小值

end--随机范围的最大值

step--间隔的步数

返回值

一个[start,stop)之间以step为步数的随机整数

2.1.6 choice(seq)

描述

从序列类型,例如列表中随机返回一个元素(序列类型包括列表、元组和字符串)

语法

choice(seq)

参数

seq--代表所被选取的序列类型

返回值

一个被选序列类型中的一个元素

特别注意

与后文讲到的sample(pop,k)区分,被choice选取后该元素不会在该序列类型中删除,通俗点讲(讲人话)就是,选取的几个随机数是有可能相同的

2.1.7 shuffle(seq)

描述

将序列类型中的元素随机排列,返回打乱后的序列

语法

shuffle(seq)

参数

seq--代表所被选取的序列类型

返回值

打乱后的序列

2.1.8 sample(pop,k)

描述

从pop类型中随机选取k个元素,以列表类型返回

语法

sample(pop,k)

参数

pop--所给定的序列类型

k--一个整数,表示选取的元素个数

返回值

选取的k个元素构成的列表(注意:已经pop的元素不会在被pop,有点类似栈)

 

posted @ 2021-07-08 21:50  柏木カケル  阅读(345)  评论(0)    收藏  举报