Python标准库Random
基本方法
获取一个[0,1)的随机浮点数:
import random print(random.random()) #输出 0.6701488343121276
获取指定区间的随机浮点数:
import random print(random.uniform(1,3)) #输出 1.2275756189688645
随机生成一个指定范围的整数,相当于[1,10]
import random print(random.randint(1,10)) #输出 8
随机生成一个指定范围的整数,相当于[0,10)
import random print(random.randrange(0,10))
#输出
3
从序列中获取一个随机值:
import random print(random.choice([1,4,2,5,8])) #输出 8
从字符串中随机获取特定数量的字符:
import random print(random.sample("password",3))
#输出
['s', 'a', 'o']
为有序的序列洗牌:
import random l = [1,2,3,4,5] random.shuffle(l) print(l) #输出 [3, 4, 2, 5, 1]
应用
Random模块实现验证码功能
纯4位数字验证码
错误的验证码,每次的验证码都是一样的。
checkCode = "" for i in range(4): checkCode += str(i) print(checkCode)
#输出
0123
正确的代码实现,每次验证码都是随机的。
import random checkCode = "" for i in range(4): s = random.randint(0,9) checkCode += str(s) print(checkCode)
字母和数字的验证码
import random checkCode = "" s = "qwertyuiopasdfghjklzxcvbnm0123456789" z = random.sample(s,4) for i in z: checkCode += str(i) print(checkCode)