Python之random模块详解
发布时间:2025-10-27 16:12:21

random模块python
在python中,random模块是一个生成随机数的模块。
random不是python解释器内置的模块。
导入random模块的方法是:
importrandom
如果只使用random模块中的单个方法,也可以使用
fromrandomimportmethod_name
例如:
我只想在10以内生成一个随机整数,不需要random模块的其他方法,也可以使用以下命令
fromrandomimportrandint random.randint(0,10)
使用以下命令可以查看random模块的内置方法:
dir(random)
常用的方法有以下几种:
choice
#从非空列表中随机选择一个元素 >Choosearandomelementfromanon-emptysequence.
>>>random.choice(1,3,5,7)) 1 >>>random.choice(1,3,5,7)) 3
相关推荐:Python视频教程
randint
#从a和b(包括b)范围内随机生成一个整数 >Returnrandomintegerinrange[a,b],includingbothendpoints.
>>>random.randint(0,9) 8 >>>random.randint(0,9) 0 >>>random.randint(0,9) 4 >>>random.randint(0,9) 3
random
#从0(包括0)到1生成浮点数 >random()->xintheinterval[0,1).
>>>random.random() 0.3898009217264272 >>>random.random() 0.897328889551127 >>>random.random() 0.9899842422616898
randrange
#在指定范围内随机生成整数 >Choosearandomitemfromrange(start,stop[,step]). Thisfixestheproblemwithrandint()whichincludesthe endpoint;inPythonthisisusuallynotwhatyouwant.
>>>random.randrange(100,200) 156 >>>random.randrange(100,200) 133 >>>random.randrange(10,20) 11 >>>random.randrange(10,20) 15
sample
#从列表或集合中随机选择多个元素 >Chooseskuniquerandomelementsfromapopulationsequenceorset.
>>>random.sample[23,[1,2,3],"aa","yy"],2) ['aa',23] >>>random.sample[23,[1,2,3],"aa","yy"],3) ['aa',[1,2,3],23]
shuffle
#打乱列表中元素的顺序,列表中的内存地址保持不变 >Shufflelistxinplace,andreturnNone.
>>>l1=[1,"a",3,5,"b","c"] >>>id(l1) 140436582171208 >>>random.shuffle(l1) >>>print(l1) [1,'b','a','c',3,5] >>>id(l1) 140436582171208
uniform
#浮点数在指定范围内随机生成 >Getarandomnumberintherange[a,b)or[a,b]dependingonrounding.
>>>random.uniform(12,33) 27.02416276339153 >>>random.uniform(12,33) 13.832414985007832 >>>random.uniform(12,33) 12.827493699496461
现在我想生成一个包含大小写和数字的五位随机验证码,代码如下:
importrandom defrandom_code(): random_str="" foriinrange(5): #随机选择一个整数 num=random.randint(0,9) #生成大写字母 upper=chr(random.randint(65,90)) #生成一个小写字母 lower=chr(random.randint(97,122)) #每次从大小写字母中随机选择一个 res=random.choice([str(num),upper,lower]) random_str+=res returnrandom_str print(random_code())
本程序运行5次,生成的验证码如下:
KwlTN t1Pag 294l6 t1Pag 294l6
下一篇 Python之time模块详解
