Python random模块的使用示例
常用的random模块方法
importrandom #random.random()用于生成一个0到1的随机浮点数:0<=n<1.0 print(random.random())#0.18246795790915304 #random.randint(a,b),用于生成一个指定范围内的整数。 #其中参数a是下限,参数b是上限,生成的随机数n:a<=n<=b print(random.randint(1,10))#8 #random.randrange([start],stop[,step]), #从指定范围内,按指定基数递增的集合中获取一个随机数 #如:random.randrang(10,100,2),结果相当于从[10,12,14,16,...96,98]序列中选取一个随机数 #random.randrang(10,100,2)在结果上与random.choice(range(10,100,2))等效 print(random.randrange(1,10))#5 #random.choice从序列中获取一个随机元素。其函数原型为:random.choice(sequence)。参数sequence表示一个有序类型。 #这里要说明一下:sequence在python不是一种特定的类型,而是泛指一系列的类型。 #list,tuple,字符串都属于sequence。 print(random.choice("Python"))#y print(random.choice(["JGood","is","a","handsome","boy"]))#JGood print(random.choice(("Tuple","List","Dict")))#List #random.sample(sequence,k),从指定序列中随机获取指定长度的片段。sample函数不会修改原有序列。 print(random.sample([1,2,3,4,5],3))#[1,2,5] #random.shuffle(x[,random]),用于将一个列表中的元素打乱。 p=["Python","is","powerful","simple","andsoon..."] print(random.shuffle(p)) #['powerful','simple','is','Python','andsoon...'] #random.uniform(a,b),用于生成一个指定范围内的随机符点数,两个参数其中一个是上限,一个是下限。 #如果a=n>=a #如果a>b,则生成的随机数n:a>=n>=b printrandom.uniform(10,20)#14.73 printrandom.uniform(20,10)#18.579
实际应用
importrandom lis=[1,2,3,4,5,6,7,8,9,10] #随机生成浮点数 print(random.random())#随机返回0~1之间的浮点数 0.47626693393991737 print(random.uniform(1,10))#随机返回1~10之间的浮点数 4.0844448042717225 #随机生成整数 print(random.randint(1,10))#随机生成1~10之间的整数 8 print(random.randrange(0,10,2))#随机生成0~10之间的偶数 8 print(random.randrange(1,10,2))#随机生成1~10之间的基数 1 #操作序列、字符串 ##从序列、字符串中随机返回一个元素 print(random.choice(lis)) 4 print(random.choice('abcdefg')) g ##随机截取序列、字符串中指定长度片段 print(random.sample(lis,2)) [9,4] print(random.sample('abcdefg',2)) ['f','a'] ##打乱一个序列 random.shuffle(lis) print(lis) [7,6,1,2,10,3,4,8,5,9]
生成随机验证码
importrandom checkcode='' foriinrange(6): current=random.randrange(0,6) ifcurrent!=i: temp=chr(random.randint(65,90)) else: temp=random.randint(0,9) checkcode+=str(temp) print(checkcode)
以上就是Pythonrandom模块的使用示例的详细内容,更多关于Pythonrandom模块的资料请关注毛票票其它相关文章!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。