import random # random()无需传参,随机(0, 1)的随机浮点数,0和1都是开区间(开区间不包括此数),返回值是folat类型,如:0.2722437512228608 print(random.random()) # (0, 1) # randint()必传两个整型数值参数,两边都为闭区间(闭区间包括此数) print(random.randint(-2, 2)) # [-2, 2] # randrange至少传入一个参数,左边闭区间右边开区间 print(random.randrange(-2, 2)) # [-2, 2) # choice()对一个可迭代对象进行随机取值 print(random.choice('abc')) print(random.choice([4, 5, 6])) # sample()必传两个参数,对一个可迭代对象进行取指定的多少个值,这个值必须小于等于可迭代对象的索引个数,返回的是列表 print(random.sample([x for x in range(10)], 5)) # uniform()在指定的范围取随机浮点数,两边都是开区间,返回float类型 print(random.uniform(1, 2)) # (1, 2) # shuffle()打乱次序,传入字符串和元组都会报错 item = [1, 2, 3, 4] random.shuffle(item) print(item) def v_code(): '''4位数字字母随机验证码''' msg = '' for i in range(4): # l = [] num = random.randint(0, 9) alf = chr(random.randint(65, 90)) # 大写A-Z对应的阿斯克码表数字 alf1 = chr(random.randint(97, 122)) # 小写a-z对应的阿斯克码表数字 # l.append(str(num)) # l.append(alf) # l.append(alf1) ret = random.choice([str(num), alf, alf1]) msg += ret return msg print(v_code())