random模块

Posted 君无戏言

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了random模块相关的知识,希望对你有一定的参考价值。

>>> import random
#随机小数
>>> random.random()      # 大于0且小于1之间的小数
0.7664338663654585
>>> random.uniform(1,3) #大于1小于3的小数
1.6270147180533838

#随机整数
>>> random.randint(1,5)  # 大于等于1且小于等于5之间的整数
>>> random.randrange(1,10,2) # 大于等于1且小于10之间的奇数


#随机选择一个返回
>>> random.choice([1,‘23‘,[4,5]])  # #1或者23或者[4,5]
#随机选择多个返回,返回的个数为函数的第二个参数
>>> random.sample([1,‘23‘,[4,5]],2) # #列表元素任意2个组合
[[4, 5], ‘23‘]


#打乱列表顺序
>>> item=[1,3,5,7,9]
>>> random.shuffle(item) # 打乱次序
>>> item
[5, 1, 3, 7, 9]
>>> random.shuffle(item)
>>> item
[5, 9, 7, 1, 3]

练习:生成随机验证码

1)

import random

def v_code():

    code = ‘‘
    for i in range(5):

        num=random.randint(0,9)
        alf=chr(random.randint(65,90))
        add=random.choice([num,alf])
        code="".join([code,str(add)])

    return code

print(v_code())

生成验证码

2)

生成一个随机六位数证书

import random
l=[]
for i in range(6):
    rand_num=random.randint(0,9)
    l.append(str(rand_num))
print(‘‘.join(l))
生成6位数验证码:

3)

随机生成一个数字字母区分大小写的验证码:

import random
l=[]
for i in range(6):
    alpha=chr(random.randint(65,90))
    alpha_lower=chr(random.randint(97,122))
    num=str(random.randint(0,9))
    ret=random.choice([alpha,alpha_lower,num])
    l.append(ret)
print(‘‘.join(l))


生成的验证码:

 

以上是关于random模块的主要内容,如果未能解决你的问题,请参考以下文章

简述模块-random

使用import导入random模块。使用该模块下的random()函数,生成一个0到1之间的?

如何使用模块化代码片段中的LeakCanary检测内存泄漏?

PHP 代码片段

python常用模块(模块和包的解释,time模块,sys模块,random模块,os模块,json和pickle序列化模块)

22 初始模块 random time collections functools