python random模块
详情参考:http://egon09.blog.51cto.com/9161406/1840425
import random random.random() #括号里不能添加任何东西 >>>返回0~1的一个随机数
random.randint(a,b) #a<=n<=b >>>返回a~b中的一个随机整数n,包括a和b
random.randrange(a,b,步长) #都要为整数 >>>返回【a,a+步长,......b】序列中的一个随机整数
import random print(random.randrange(0, 101, 2)) 返回0~100间的一个随机偶数
PS:range(i, j) produces i, i+1, i+2, ..., j-1
即:range包括头不包括尾(简称:包头不包尾)
random.choice() #可以填入列表,字符串,元组等(有系列数据的) >>>返回序列中的一个随机元素
random.sample(序列,长度) >>>从指定序列中随机获取指定长度的片断
实例:生成四位随机验证码(字符型)
首先,生成四位都是数字的验证码是很简单的,randint(1000,9999)即可,但是考虑到非数字的情况,该怎么办呢?
先把每一个字符单独分离开,每一个字符随机为字母或数字,最后合在一起。
如何实现每一个字符随机为字母或数字呢?
用chr(65-90)变int为字母(ASCII码)实现随机字母
给出最终代码
import random # print(random.randint(1000,9999)) Y_code = '' for i in range(4):#最外层的for循环仅仅为了实现验证码的个数(0,1,2,3一共四次) j = random.randint(0, 1)#根据j是否为0来判断是否是字母还是数字 if j == 0: current = str(random.randint(0, 9))#把数字str化才能合并 else: current = chr(random.randint(65, 90)) Y_code = Y_code + current print(Y_code)