9 random模块

 1、ramdom模块主要方法

random.random()函数是这个模块中最常用的方法了,它会生成一个随机的浮点数,范围是在0.0~1.0之间。

random.uniform()正好弥补了上面函数的不足,它可以设定浮点数的范围,一个是上限,一个是下限。

random.randint()随机生一个整数int类型,可以指定这个整数的范围,同样有上限和下限值,python random.randint。

random.choice()可以从任何序列,比如list列表中,选取一个随机的元素返回,可以用于字符串、列表、元组等。

random.shuffle()如果你想将一个序列中的元素,随机打乱的话可以用这个函数方法。

random.sample()可以从指定的序列中,随机的截取指个数的元素,作为一个片段返回

2、随机小数

import random
print(random.random())  #随机大于0 且小于1 之间的小数
返回一个随机浮点数
>0.8876286055735736
import random
print(random.uniform(0,9))   #随机一个大于0小于9的小数
>1.6216140247404898

3、随机整数

print(random.randint(1,10))  #随机一个大于等于1且小于等于10的整数
>6
random.randrange(0,10) # 0-9
print(random.randrange(1,10,2))   #随机一个大于等于1且小于等于10之间的奇数,其中2表示递增基数
print(random.randrange(0,10,2)) #偶数

4、choice() 方法返回一个列表,元组或字符串的随机项。

print(random.choice(['123','abc',52,[1,2]]))    #随机返回参数列表中任意一个元素
print(random.choice('qsfqef'))

5、random.sample()

 random.sample('abcdefghij',3)  #从多个字符中选取特定数量的字符
['a', 'd', 'b']

6、打乱列表顺序

lis = [1,2,5,7,9,10]
random.shuffle(lis)
print(lis)

7、验证码生成器

import random
def random_num():
    code = ''
    for i in range(4):#生成为四位数的验证码
        ran1 = random.randint(0,9)
        ran2 = chr(random.randint(65,90))
        add = random.choice([ran1,ran2])
        print(str(add))
        code = ''.join([code,str(add)])
    return code
print(random_num())



#使用 string模块
#至少包含一个大、小写、数字
# 在大、小写、数字中随机返回6位数
import string,random
s = ''.join(random.sample(string.ascii_letters + string.digits, 3))
ran1 = random.randint(0,9) # randint()头尾都包括
ran2 = chr(random.randint(65,90))# 大写
ran3 = chr(random.randint(97,122))# 小写
code =''.join([str(ran1),str(ran2),str(ran3)])
print(''.join([code,s]))

8、生成随机字符串

>>> import string 
>>> ''.join(random.sample(string.ascii_lowercase + string.digits, 6)) 
'4fvda1'
小写字母

Python3中String模块ascii_letters和digits方法,

其中ascii_letters是生成所有字母,从a-z和A-Z,digits是生成所有数字0-9.

print(random.choice(['123','abc',52,[1,2]]))    #随机返回参数列表中任意一个元素
print(random.choice('qsfqef'))
原文地址:https://www.cnblogs.com/foremostxl/p/9502930.html