1、使用randint(a,b)生成指定范围内的随机整数。randint(a,b)表示从序列range([a,b])中获取一个随机数,包括b。
- >>> random.randint(0,100)
- 28
- >>> random.randint(0,100)
- 36
- >>> random.randint(0,100)
- 71
2、使用randrange(start,stop=None,step=1)生成一个随机数。
- >>> random.randrange(2,100,2)
- 40
- >>> random.randrange(2,100,2)
- 32
- >>> random.randrange(2,100,2)
- 12
3、使用choice(seq)从指定序列seq中随机选1个元素
- >>> random.choice(range(1,100))
- 10
- >>> random.choice(range(1,100))
- 36
- >>> random.choice(range(1,100))
- 7
4、使用sampe(seq)从指定序列seq中随机选N个元素
- >>> random.sample(range(1,100),3)
- [37, 47, 56]
- >>> random.sample(range(1,100),3)
- [19, 32, 11]
- >>> random.sample(range(1,100),3)
- [84, 30, 49]
- >>>
如果需要生成字母和数字组成的验证码,可以使用如下:
- >>> ''.join(random.sample(string.ascii_letters + string.digits, 4))
- 'bqGf'
- >>> ''.join(random.sample(string.ascii_letters + string.digits, 4))
- 'pMvg'
- >>> ''.join(random.sample(string.ascii_letters + string.digits, 4))
- 'B5ou'
5、原地随机打乱序列元素
- >>> lst = [1,2,3,4,5]
- >>> random.shuffle(lst)
- >>> lst
- [2, 5, 1, 4, 3]
- >>> random.shuffle(lst)
- >>> lst
- [5, 2, 4, 1, 3]
- >>> random.shuffle(lst)
- >>> lst
- [1, 2, 3, 4, 5]
6、使用random()生成0-1之间的浮点数值
- >>> random.random()
- 0.5709691034543324
- >>> random.random()
- 0.5198180756095951
- >>> random.random()
- 0.38801983116644256
7、使用getrandbits()生成N个比特位表示的整数
- >>> random.getrandbits(16)
- 17455L
- >>> random.getrandbits(16)
- 6084L
- >>> random.getrandbits(16)
- 23077L